大家好我尝试将json对象解析为c#对象。我有这个json:
{
"etcacik": {
"Id": 1,
"Name": "etcacikmenusu",
"Values": {
"cacik": {
"Id": 2,
"Price": 2
},
"et": {
"Id": 1,
"Price": 10
}
}
}
}
关于这个对象的课程:
public class MenuItem
{
public string Id { get; set; }
public string Name { get; set; }
public List<MenuSubItem> Values { get; set; }
}
public class MenuSubItem
{
[JsonProperty(PropertyName = "Id")]
public string Id { get; set; }
[JsonProperty(PropertyName = "Name")]
public string Name { get; set; }
[JsonProperty(PropertyName = "Price")]
public string Price { get; set; }
}
我在处理服务中的代码:
HttpResponseMessage response = client.GetAsync("Menu.json?auth=XXXXXXXXXXXXXXX").Result;
var JSON= response.Content.ReadAsStringAsync().Result;
var data = JsonConvert.DeserializeObject<MenuItem>(JSON);
我想要做的是公开显示列表中包含json字符串的对象,并对它们执行CRUD操作。 但由于我没有将这些对象显示为列表,我需要在子项中显示它们。 但是当我没有像我想要的那样列出传入的json字符串时,我收到错误。
使用反馈进行编辑:
public class MenuItem
{
public string Id { get; set; }
public Dictionary<string, MenuSubItem> Values;
}
public class MenuSubItem
{
public string Id { get; set; }
public string Price { get; set; }
}
为:
var data = JsonConvert.DeserializeObject<Dictionary<string, MenuItem>>(jsonString);