我已经在Visual Studio 2017 C#控制台应用程序中从Web服务获取JSON数据的原型,将JSON数据反序列化为三个字符串。然后我将代码移动到Windows 10 Universal应用程序中。
反序列化代码不会在UWP程序中编译,因为JavaScriptSerializer类型不可用。我无法将System.Web.Extensions添加到系统(参考/程序集/框架),从VS 2017获取此消息,"在计算机上找不到框架程序集,"当我的Windows 10解决方案打开时。
这是JSON字符串:
{
"Snippet":"\"Special counsel ...\"",
"SnippetDate":"9/9/2017 12:00:00 AM",
"SnippetSource":"The Washington Post"
}
以下是在控制台项目上编译和运行的代码片段,但不是Windows 10项目。
using System.Web.Script.Serialization;
.
.
.
public class NewsSnippet
{
public string Snippet { get; set; }
public string SnippetDate { get; set; }
public string SnippetSource { get; set; }
}
.
.
.
var serializer = new JavaScriptSerializer();
var deserializedResult = serializer.Deserialize<NewsSnippet>(jsonString);
在通用Windows应用程序中反序列化JSON字符串有哪些替代方法?
答案 0 :(得分:2)
您应该可以通过Newtonsoft's Json.net
添加Nugetvar deserializedResult = JsonConvert.DeserializeObject<NewsSnippet>(jsonString);
var source = deserializedResult.SnippetSource;