我有一个像下面的json字符串
value = {
{
"Type": "P1",
"IsAvailable": "1",
"Logics": {
"ID": "B",
"ID": "X",
"ID": "B"
}
}
}
它应该被解除分类为C#类对象,如下所示
public class CatType
{
public string Type { get; set; }
}
public class Logic
{
public string ID{ get; set; }
}
当我尝试使用以下语句反序列化时,我得到异常
CatType _catType= JsonConvert.DeserializeObject<CatType >(value.ToString());
成功反序列化对象需要做些什么?
我尝试了不同的方法解决问题没有解决问题
答案 0 :(得分:3)
您的类对于该json类型不正确。您需要在CatType中包含一个Logic集合。 CatType中也不存在IsAvailable。结构看起来更像是这样。
public class CatType
{
public string Type { get; set; }
public string IsAvailable { get; set; }
public List<Logic> Logics { get; set; }
}
public class Logic
{
public string ID{ get; set; }
}
您的json也无效。 Logics对象有3个属性,名称ID不允许。它应该是一个数组类型。像这样
value={
{
"Type": "P1",
"IsAvailable": "1",
"Logics": [
"ID": "B",
"ID": "X",
"ID": "B"
]
}
}