2016-12-01 98 views
1

我是JSON的新手,尝试添加一个JSON字符串,然后将其写入控制台。任何企图让我写下面的消息,不出我所料将JSON写入控制台

System.Runtime.Serialization.Json.XmlJsonReader

这是我试着写,这是正确的方法是什么?

private void WriteToConsole() 
{ 
    var jsonReader = JsonReaderWriterFactory.CreateJsonReader(Encoding.UTF8.GetBytes(@"{ ""Security"": { ""UsernameToken"": { ""Username"": ""belljeantest"", ""Password"": ""[email protected]!e$"" } }"), new System.Xml.XmlDictionaryReaderQuotas()); 
    Console.WriteLine(jsonReader); 
    Console.ReadLine(); 
} 
+3

您无法直接编写阅读器,JsonReader会创建一个https://msdn.microsoft.com/en-us/library/system.xml.xmldictionaryreader(v=vs.110)。 ASPX – nik0lias

回答

3

这会将其转换为XDocument,然后您需要相应地读取/使用它。

private void WriteToConsole() 
{ 
    var jsonReader = JsonReaderWriterFactory.CreateJsonReader(Encoding.UTF8.GetBytes(@"{ ""Security"": { ""UsernameToken"": { ""Username"": ""belljeantest"", ""Password"": ""[email protected]!e$"" } }"), new System.Xml.XmlDictionaryReaderQuotas()); 
    var xml = XDocument.Load(jsonReader); 
    Console.Write(xml); 
    Console.ReadLine(); 
} 

以上将打印整个XML文件。你可以使用LINQ来查询。有关XDocument的更多信息,请参阅:https://msdn.microsoft.com/en-us/library/system.xml.linq.xdocument(v=vs.110).aspx