2017-09-10 23 views
1

我已經從Visual Studio 2017 C#控制檯應用程序中的Web服務獲取JSON數據的原型,將JSON數據反序列化爲三個字符串。然後我將代碼移到Windows 10 Universal應用程序中。不能在Windows通用應用程序中使用JavaScriptSerializer

反序列化代碼不會在UWP程序中編譯,因爲JavaScriptSerializer類型不可用。我無法將System.Web.Extensions添加到系統(References/Assemblies/Framework),從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

查找Newtonsoft的Json.net'JsonConvert.DeserializeObject (jsonString)添加Newtonsoft's Json.net;'https://www.newtonsoft.com/json – Nkosi

回答

2

你應該能夠通過Nuget

var deserializedResult = JsonConvert.DeserializeObject<NewsSnippet>(jsonString); 
var source = deserializedResult.SnippetSource; 
相關問題