windows phone 中反序列化json时出现的问题
原先的項目是做的WP8版本,后來因為需求要改成WP7,一開始用的Newtonsoft.Json.dll便一直出錯。
猜想有可能是WP項目版本不同造成的,就找到了WP7.1專用的,仍然出錯:無法使用方法之類的錯誤。
改變策略,使用C#自帶的庫,自定義了一個轉化類,使用DataContractJsonSerializer,結果報錯SecurityException。
找遍了谷歌,結果發現,要序列化的類沒有設置成public屬性,在WP8中不設置可以轉化,但是在之下的版本中都會出錯。
不僅是json數據,xml數據也是一樣,對于的序列化類必須設置成public。
至此,兩種序列化反序列化方法都恢復了正常,去掉DataContractJsonSerializer方法,以前的代碼就不用動了。
?
DataContractJsonSerializer在System.Runtime.Serialization.Json命名空間下,.NET Framework 3.5包含在System.ServiceModel.Web.dll中,需要添加對其的引用;.NET Framework 4在System.Runtime.Serialization中。
轉載于:https://www.cnblogs.com/fengbeihong/archive/2013/03/13/2957898.html
總結
以上是生活随笔為你收集整理的windows phone 中反序列化json时出现的问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HDU 1059 Dividing
- 下一篇: w5100 网上资料整理