Как сериализовать XML в объект JSON с помощью Json.NET - PullRequest
8 голосов
/ 28 июля 2011

Я могу сериализовать XML в строку JSON следующим образом:

var xml = new XmlDocument();
xml.LoadXml("<person><name>John</name></person>");
string jsonString = Newtonsoft.Json.JsonConvert.SerializeXmlNode(xml, Newtonsoft.Json.Formatting.None);
Response.ContentType = "application/json";
Response.Write(Newtonsoft.Json.JsonConvert.SerializeObject(jsonString));

Это даст мне:

"{\"person\":{\"name\":\"John\"}}"

Но как я могу сериализовать его в объект JSON?Как это:

{"person":{"name":"John"}}

Ответы [ 2 ]

19 голосов
/ 29 июля 2011

Иногда мы просто хотим сделать это сложнее, чем есть ...

var xml = new XmlDocument();
xml.LoadXml("<person><name>John</name></person>");
Response.ContentType = "application/json";
Response.Write(Newtonsoft.Json.JsonConvert.SerializeObject(xml));

Что я сделал неправильно, так это сериализовал XML в строку и затем снова сериализировал его.

0 голосов
/ 29 июля 2015

когда вы получите доступ к данным, то / автоматически не отображается. Я получаю доступ к HTML5 справке AJAX. Результат показывает

в C # результат показывает, что "{\" person \ ": {\" name \ ": \" John \ "}}"

Но в HTML5 все работает нормально { "Человек": { "имя": "Джон"}}

...