如何在C#上从json中读取数据
本文关键字:读取 数据 json 上从 | 更新日期: 2023-09-27 18:20:21
我有以下json对象,我将其传递给我的c#服务器
[
{
"ID": 1,
"FirstName": "Jay",
"LastName": "Smith"
},
{
"ID": 2,
"FirstName": "Rich",
"LastName": "Son"
},
{
"ID": 3,
"FirstName": "Emmy",
"LastName": "Wat"
}
]
我创建了一个类似的类
public class Person
{
public int ID { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
}
当我做这个
public static string addRecord(string details)
{
Person tempRecord = JsonConvert.DeserializeObject<Person>(details);
string tempFN = tempRecord.FirstName;
return tempFN;
}
我无法得到实际结果。
我做错了什么?我必须在我的Person类中列出另一个列表吗?有什么帮助吗?
更新-我的记录来自网格,这就是我将其发送到服务器的方式
var jsonD = Ext.encode(Ext.pluck(this.myGridStore.data.items, 'data'));
Ext.Ajax.request({
scope: this,
method: 'POST',
url: 'myApp/AddRecord',
headers: { 'Content-Type': 'application/json' },
dataType: 'json',
jsonData: jsonD,
success: function (response) {
},
failure: function (response) {
}
});
您的JSON包含三个Person
的集合,但您正试图将JSON反序列化为单个Person
。
Person tempRecord = JsonConvert.DeserializeObject<Person>(details);
此行需要返回Person
s的集合。
var tempRecords = JsonConvert.DeserializeObject<List<Person>>(details);