2012-09-27 22 views
1

我需要一個簡單的方法來讀取Amazon Affiliates URL的結果,我有亞馬遜的代碼,並且我得到了一個JSON結果,我無法在ASP.NET中閱讀。 有沒有一種簡單的方法來解析ASP.NET 4.5中的JSON數據?如何在ASP.NET中讀取JSON?

回答

1

您可以根據使用JObject classJson.net

鏈接:http://james.newtonking.com/pages/json-net.aspx

爲了解析您可以使用JObject.Parse Method

代碼

var jsonString = @"{""Name"":""Aghilas"",""Company"":""....."", 
         ""Entered"":""2012-03-16T00:03:33.245-10:00""}"; 

    dynamic json = JValue.Parse(jsonString); 

    // values require casting 
    string name = json.Name; 
    string company = json.Company; 
    DateTime entered = json.Entered; 
5

你也可以使用.NET內置JavaScriptSerializer

using System.Web.Script.Serialization; 
... 
JavaScriptSerializer js = new JavaScriptSerializer(); 
dynamic obj = js.Deserialize<dynamic>(jsonString); 
1

使用JSON.NET包,它非常簡單。

安裝包裝:

打開控制檯。 「查看」 - >「其他窗口」>「軟件包管理器控制檯」

然後鍵入以下內容: 安裝,包裝Newtonsoft.Json

您可以讀取JSON對象動態對象或strongly-鍵入一個。 如果你想讀JSON的類型爲一個強類型的對象,你可以做到以下幾點:

的類來填充數據:

public class AmazonAffiliate 
{ 

public string Username {get;set;} 

public string Email {get;set;} 

public Date BirthDate {get;set;} 

} 

方法轉換的Json字符串強類型類:

public static T GetJsonContent<T>(string jsonAsString) 
    { 
     var serializer = new JsonSerializer<T>(); 
     return serializer.DeserializeFromString(jsonAsString); 
    } 

而且你可以使用它像這樣:

AmazonAffiliate affiliate = GetJsonContent<AmazonAffiliate>(jsonString);