Je veux utiliser une API pour obtenir des informations de l'interwebz. L'API renvoie des données au format Json.
Pas beaucoup de code à afficher car je ne peux pas vraiment commencer sans l'instruction using appropriée ...
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using System.Net;
using System.Runtime.Serialization.Json;
Je reçois cette erreur:
Le nom de type ou d'espace de noms 'Json' n'existe pas dans l'espace de noms 'System.Runtime.Serialization' (vous manque une référence d'assembly?)
Suis-je manquant d'un fichier DLL ou quelque chose? Sur la base de mes heures de recherche infructueuse de solutions, je comprends que le .NET 4.xx devrait déjà avoir les outils nécessaires pour analyser une chaîne au format Json ?
L'espace de noms System.Runtime.Serialization.Json se trouve dans deux DLL différentes en fonction de votre infrastructure .net.
Dans .NET 3.5, il se trouve dans System.ServiceModel.Web.dll
Dans .NET 4.0 et supérieur, il se trouve dans System.Runtime.Serialization.dll.
Assurez-vous d'avoir ajouté la bonne DLL comme référence dans votre projet et ajoutez using System.Runtime.Serialization.Json;
en haut de votre fichier de code.
EDIT - Pensez à utiliser JSON.NET
Même si le .NET Framework fournit ses propres espaces de noms de sérialisation et de désérialisation JSON (DataContractJsonSerializer et JavaScriptSerializer), vous devez vérifier si vous préférez utiliser JSON.NET.
JSON.NET est plus facile à utiliser, de meilleures performances et a beaucoup plus de fonctionnalités. http://www.newtonsoft.com/json/help/html/JsonNetVsDotNetSerializers.htm
vous devez importer la DLL System.Runtime.Serialization à partir de la référence
Vous devez ajouter une référence à votre projet.
Dans l'Explorateur de solutions, cliquez avec le bouton droit sur références puis ajoutez une référence. Vous verrez une liste de DLL et vous devez cocher la case à côté de celle dont vous avez besoin pour qu'elle soit ajoutée au projet. Après cela, vous pouvez ajouter avec succès l'instruction using.
J'espère que ça t'as aidé!
Le processus général de sérialisation et de désérialisation de JSON à partir de C # est le suivant:
Ajoutez une référence à la bibliothèque System.Runtime.Serialization.
Ajoutez des directives using pour System.Runtime.Serialization et System.Runtime.Serialization.Json.
Veuillez modifier votre Target framework
de .NET Framework 4 Client Profile
à .NET Framework 4