2010-10-20 4 views
2

Je voudrais être capable d'analyser une chaîne de JSON représentant un objet dans un sac de propriétés (comme un dictionnaire) que je peux utiliser en C#.Existe-t-il une bibliothèque existante pour analyser JSON en Dictionary <String, Object> dans .net?

Compte tenu de cette chaîne:

{ "id": 1, "name": "un nom", "certains paramètres": 2}

Je veux finir avec un dictionnaire qui contient " id "," name ", et" some parameter "en tant que keys et 1," some name ", et 2 en tant que valeurs respectivement. Je ne veux pas analyser la chaîne JSON moi-même - peut-être y at-il une bibliothèque (de préférence dans le framework .net) sur laquelle je peux m'appuyer pour faire l'analyse pour donner accès à la clé/aux valeurs dans le JSON objet. Ou existe-t-il un deserializer disponible que je peux explicitement dire quel type de .net cibler?

Dans mon scénario, je n'aurai jamais qu'un seul objet racine (il ne commencera pas avec un tableau).

Merci.

Répondre

8
var json = new JavaScriptSerializer() { MaxJsonLength = int.MaxValue }; 
var dict = (IDictionary<string, object>)json.DeserializeObject(yourString); 
+0

Fonctionne parfaitement - merci. –

1

Avez-vous regardé les DataContractJsonSerializer et JavaScriptSerializer pour voir si l'un ou l'autre répond à vos besoins?

Sinon, vous pouvez également essayer JSON.NET

+0

J'avais vu le DataContractJsonSerializer, mais je n'avais pas vu le JavaScriptSerializer (comme utilisé dans la réponse de Fisher.) Merci. –

Questions connexes