Rah*_*put 5 c# asp.net-mvc json.net
我正在关注JSON数据
[{"id":"1","text":"System Admin","target":{"jQuery1710835279177001846":12},"checked":true,"state":"open"},
{"id":"2","text":"HRMS","target":{"jQuery1710835279177001846":34},"checked":false,"state":"open"},
{"id":"3","text":"SDBMS","target":{"jQuery1710835279177001846":42},"checked":false},
{"id":"8","text":"Admin","target":{"jQuery1710835279177001846":43},"checked":false},
{"id":"9","text":"My test Admin","target":{"jQuery1710835279177001846":44},"checked":false,"state":"open"},
{"id":"24","text":"ModuleName","target":{"jQuery1710835279177001846":46},"checked":false,"state":"open"}]
Run Code Online (Sandbox Code Playgroud)
尝试使用强类型使用Json.Net解析
这是我的财产类
public class testclass
{
public string id { get; set; }
public string text { get; set; }
public string @checked { get; set; }
public string state { get; set; }
public target jQuery1710835279177001846 { get; set; }
}
public class testclass2
{
public List<testclass> testclass1 { get; set; }
}
public class target
{
public string jQuery1710835279177001846 { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
在这里我试图访问我得到异常的数据
Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'QuexstERP.Web.UI.Areas.SysAdmin.Controllers.testclass' because the type requires a JSON object (e.g. {"name":"value"}) to deserialize correctly.
Run Code Online (Sandbox Code Playgroud)
我的控制器代码看起来像
public void Test(string Name, object modeldata)
{
var obj = JsonConvert.DeserializeObject<testclass>(Name);
}
Run Code Online (Sandbox Code Playgroud)
知道如何在C#中解决这个问题
你的Json字符串看起来有序列化的数组对象,因为它包含[ ].这意味着你有一个Json字符串,它是在数组对象序列化后形成的.所以你需要反序列化为数组对象,所以试试这个
var obj = JsonConvert.DeserializeObject<List<testclass>>(jsonString);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15722 次 |
| 最近记录: |