这是我的JSON。
{
"odata.metadata" : "",
"value" : [
{
"ItemCode" : "NUOVO_ELEMENT1406",
"ItemName" : "Prova3",
"QuantityOnStock" : 0.0
},
{
"ItemCode" : "NUOVO_ELEMENT14506",
"ItemName" : "Prova3",
"QuantityOnStock" : 0.0
},
{
"ItemCode" : "NUOVO_ELEMENT1455106",
"ItemName" : "Prova3",
"QuantityOnStock" : 0.0
},
{
"ItemCode" : "NUOVO_ELEMENT1455a106",
"ItemName" : "Prova3",
"QuantityOnStock" : 0.0
},
{
"ItemCode" : "NUOVO_ELEMENT145574a106",
"ItemName" : "Prova3",
"QuantityOnStock" : 0.0
},
{
"ItemCode" : "NUOVO_ELEMENT16",
"ItemName" : "Prova3",
"QuantityOnStock" : 0.0
},
{
"ItemCode" : "NUOVO_ELEMENT1d6",
"ItemName" : "Prova3",
"QuantityOnStock" : 0.0
},
{
"ItemCode" : "NUOVO_ELEMENT433",
"ItemName" : "Prova3",
"QuantityOnStock" : 0.0
},
{
"ItemCode" : "NUOVO_ELEMENT1d464645454546",
"ItemName" : "UPDATE",
"QuantityOnStock" : 0.0
},
{
"ItemCode" : "NUOVO_ELEMENT433787079",
"ItemName" : "Prova3",
"QuantityOnStock" : 0.0
},
{
"ItemCode" : "NUOVO_ELEMENT43389898989787079",
"ItemName" : "Prova3121",
"QuantityOnStock" : 0.0
}
]
}
这是一个实体,其任务是将JSON映射到相应的数据结构。
public class Item
{
[JsonProperty(PropertyName ="ItemCode")]
public string ItemCode { get; set; }
[JsonProperty(PropertyName ="ItemName")]
public string ItemName { get; set; }
[JsonProperty(PropertyName ="QuantityOnStock")]
public decimal QuantityOnStock { get; set; }
}
通过这个类,我想到了JSON。
internal class JsonParser
{
internal void Deserialize(string v)
{
List<Item> it = JsonConvert.DeserializeObject<List<Item>>(v);
foreach (Item item in it)
{
Console.WriteLine("{0},{1}", item.ItemName, item.ItemCode);
}
}
}
我试图删除List,只使用Item,当我的json仅包含一个元素时没有问题,但在我有更多元素并尝试使用List时,我会收到标题中描述的错误。
public class SomeClass { public List<Item> value { get; set; }
等等。 - ADysonDeserialize()
方法。使用以下输入将正常工作:[{ItemCode:'ItemCode1',ItemName:'ItemName1',QuantityOnStock:'10.25'},{ItemCode:'ItemCode2',ItemName:'ItemName2',QuantityOnStock:'10.25'}]
。 - Tanmay