我正在尝试开发现有 Windows 商店应用程序的 Wp8 应用程序,其中使用了 windows.data.Json 命名空间的 JsonObject。但我无法在我的 wp8 应用程序中使用它。那么 Wp8 应用程序中 JsonObject 的替代方案是什么?
提前致谢。
我正在尝试开发现有 Windows 商店应用程序的 Wp8 应用程序,其中使用了 windows.data.Json 命名空间的 JsonObject。但我无法在我的 wp8 应用程序中使用它。那么 Wp8 应用程序中 JsonObject 的替代方案是什么?
提前致谢。
在您的应用程序中轻松使用 JSON 的第一步是下载 NuGet 包JSON.net。然后,您只需使用适当的 DataContract 属性定义模型,然后您就可以使用JsonConvert类非常简单地序列化和反序列化 json 字符串:
序列化和反序列化 JSON
DataContractJsonSerializer 是您正在寻找的。它适用于 Windows 商店应用程序和 Windows 手机应用程序,无需第三方库。
如果你的 json 是这样的:
{"name":"Bob","description":"Friend"}
然后,您必须创建一个“DataContract”类来完全像这样表示 json 数据:
[DataContract]
public class Info
{
[DataMember(Name = "name")]
public string Name { get; set; }
[DataMember(Name = "description")]
public string Description { get; set; }
}
然后你可以像这样从 json 字符串数据反序列化到对象:
Info info;
using (MemoryStream stream = new MemoryStream(Encoding.UTF8.GetBytes(jsonString)))
{
DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(Info));
info = (Info)serializer.ReadObject(stream);
}
我已经多次使用它,它也适用于数组和嵌套类。
我的问题得到了答案。我已将 Windows 商店应用程序代码放在一个 winmd 文件中,并将其引用添加到我的 WP 8 应用程序中。现在我可以从我的 WP 8 应用程序访问 Windows.Data.Json 了!!
您可以使用 Newtonsoft.Json,这是最流行的 .net Json 库 Newtonsoft.json nuget