JSON 字符串反序列化为 C# 对象
JSON string deserialisation into C# object
我从 API 调用中得到以下结果 - 能够将 JSON 字符串反序列化为 C# 对象的最佳 C# 对象结构是什么?
我遇到的问题是 JSON 对象实际上是品牌名称,而不是
"data":{"brands":{"brand":{"name:"Amazon"...etc
api 返回:
"data":{"brands":{"amazon":{"name:"Amazon",....
这使得创建品牌变得困难 --> 品牌层次结构
完整 JSON 字符串见下文:
{
"status":"success",
"code":"1254",
"message":"Hello",
"data":{
"brands":{
"amazon":{
"slug":"amazon",
"name":"Amazon UK"
},
"boots":{
"slug":"boots",
"name":"boots UK"
}
}
}
}
下面的结构应该没问题,我猜
public class RootObject
{
public string status { get; set; }
public string code { get; set; }
public string message { get; set; }
public Data data { get; set; }
}
public class Data
{
public Dictionary<string, Brand> brands { get; set; }
}
public class Brand
{
public string slug { get; set; }
public string name { get; set; }
}
并像
一样使用 ii
var result = JsonConvert.DeserializeObject<RootObject>(yourJsonString);
我从 API 调用中得到以下结果 - 能够将 JSON 字符串反序列化为 C# 对象的最佳 C# 对象结构是什么?
我遇到的问题是 JSON 对象实际上是品牌名称,而不是
"data":{"brands":{"brand":{"name:"Amazon"...etc
api 返回:
"data":{"brands":{"amazon":{"name:"Amazon",....
这使得创建品牌变得困难 --> 品牌层次结构
完整 JSON 字符串见下文:
{
"status":"success",
"code":"1254",
"message":"Hello",
"data":{
"brands":{
"amazon":{
"slug":"amazon",
"name":"Amazon UK"
},
"boots":{
"slug":"boots",
"name":"boots UK"
}
}
}
}
下面的结构应该没问题,我猜
public class RootObject
{
public string status { get; set; }
public string code { get; set; }
public string message { get; set; }
public Data data { get; set; }
}
public class Data
{
public Dictionary<string, Brand> brands { get; set; }
}
public class Brand
{
public string slug { get; set; }
public string name { get; set; }
}
并像
一样使用 iivar result = JsonConvert.DeserializeObject<RootObject>(yourJsonString);