在WindowsPhone7上解析JSON
我试图在WindowsPhone7上进行一些简单的JSON操作。JSON.NET看起来很棒,但当我尝试添加对它的引用时,VS2010会抱怨 它允许我添加Silverlight dll,但警告我它可能会导致奇怪的应用程序行为,所以我怀疑它是否真的能工作 看起来是序列化和反序列化数据的好方法,但我需要实际查询它。我是否可以使用此技术将其序列化为在WindowsPhone7上解析JSON,json,windows-phone-7,json.net,Json,Windows Phone 7,Json.net,我试图在WindowsPhone7上进行一些简单的JSON操作。JSON.NET看起来很棒,但当我尝试添加对它的引用时,VS2010会抱怨 它允许我添加Silverlight dll,但警告我它可能会导致奇怪的应用程序行为,所以我怀疑它是否真的能工作 看起来是序列化和反序列化数据的好方法,但我需要实际查询它。我是否可以使用此技术将其序列化为IQueryable,然后在其上使用LINQ?我可以将JSON转换成XML并使用LINQ吗 或者我应该自己做一些粗糙和悲伤的字符串操作 更新:由于某些原因,我
IQueryable
,然后在其上使用LINQ?我可以将JSON转换成XML并使用LINQ吗
或者我应该自己做一些粗糙和悲伤的字符串操作
更新:由于某些原因,我甚至无法让VS2010识别DataContractJsonSerializer
:
// works
DataContractSerializer ser1 = new DataContractSerializer();
// the type or namespace 'DataContractJsonSerializer' could not be found ...
DataContractJsonSerializer ser = new DataContractJsonSerializer();
更新2:以下投诉:
using System.Runtime.Serialization.Json;
错误:
类型或命名空间名称“Json”不存在
命名空间中不存在
“System.Runtime.Serialization”(是
您缺少程序集引用吗?)
我是做错了什么,还是wp7不支持JSON
更新3:看起来DataContractJsonSerializer
位于System.Servicemodel.Web命名空间中
更新4:我添加了对Silverlight JSON.NET dll的引用,目前它似乎工作正常。祈求好运。是的,根据您的更新3(几乎):DataContractJsonSerializer
位于System.Servicemodel.Web.dll
程序集中,但位于System.Runtime.Serialization.Json
命名空间中
很多人都被抓了出来
很高兴您似乎已经开始工作了。另外,如果您使用DataContract属性,它位于
System.Runtime.Serialization
命名空间和System.Runtime.Serialization.dll
程序集中。只是好奇;WP7是如何开发的?为什么在System.ServiceModel.Web中找到DataContractJsonSerializer时仍然使用JSON.Net?有什么优点吗?