Как обрабатывать JSON в C #? - PullRequest
       11

Как обрабатывать JSON в C #?

4 голосов
/ 12 ноября 2009

Есть ли простой / элегантный парсер для работы с JSON в C #? Как насчет фактической сериализации / десериализации в объекты C #?

Ответы [ 5 ]

8 голосов
/ 12 ноября 2009

JSON.Net - довольно хорошая библиотека

4 голосов
/ 30 октября 2012
var jss = new JavaScriptSerializer();
var data = jss.Deserialize<dynamic>(jsonString);

Не забудьте сослаться на " System.Web.Extensions "

2 голосов
/ 12 ноября 2009

См

http://msdn.microsoft.com/en-us/library/system.runtime.serialization.json.datacontractjsonserializer.aspx

По сути, вы можете использовать модель «контракт данных» (которая часто используется для сериализации WCF XML) и для JSON. Я обнаружил, что он довольно быстрый и простой в использовании для небольших задач.

Также проверьте этот образец:

http://msdn.microsoft.com/en-us/library/bb943471.aspx

1 голос
/ 12 ноября 2009

Есть класс DataContractJsonSerializer .

Deserialize:

DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(MyObject));
Stream s = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(json_string));
MyObject obj = ser.ReadObject(s) as MyObject;

Сериализация:

DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(MyObject));
Stream s = new MemoryStream();
MyObject obj = new MyObject { .. set properties .. };
ser.WriteObject(s, obj);
s.Seek( SeekOrigin.Begin );
var reader = new StreamReader(s);
string json_string = reader.ReadToEnd();
0 голосов
/ 20 ноября 2009

DataContractJsonSerializer для сериализации в / из объектов.

В Silverlight 3 есть System.Json (http://msdn.microsoft.com/en-us/library/system.json(VS.95).aspx), очень удобно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...