1

我需要一个简单的方法来从 Amazon Affiliates URL 读取结果,我有 Amazon 的代码,我得到了一个我无法在 ASP.NET 中读取的 JSON 结果。有没有一种简单的方法来解析 ASP.NET 4.5 中的 JSON 数据?

4

3 回答 3

5

您还可以使用 .NET 内置JavaScriptSerializer

using System.Web.Script.Serialization;
...
JavaScriptSerializer js = new JavaScriptSerializer();
dynamic obj = js.Deserialize<dynamic>(jsonString);
于 2012-09-27T17:40:43.000 回答
2

您可以使用JObject class基于Json.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;
于 2012-09-27T17:35:59.097 回答
1

使用 JSON.NET 包,非常简单。

要安装软件包:

打开控制台。“查看”>“其他窗口”>“包管理器控制台”

然后键入以下内容: Install-Package Newtonsoft.Json

您既可以将 Json 对象读取为动态对象,也可以将其读取为强类型对象。如果您想将 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);
于 2012-09-27T18:56:06.683 回答