将 JSON 字符串转换为 DataTable
Converting JSON string to DataTable
我知道以前有人问过这种问题,但我似乎找不到任何有效的方法。
我正在尝试将 JSON 字符串转换为数据表,或我可以在 C# 上使用的任何其他形式。
这是我收到的 JSON 文件的示例:
{ "DatabaseName" : {"Employees": [{"Full-Name":"John Smith","Address":["123 Main St", "Apt 202"],"City":"NYC"}]}}
我尝试了不同的方法,但要么得到一个空的数据表,要么出现许多不同的错误。
Object jObject = JsonConvert.DeserializeObject<JObject>(Response.Content);
DataTable dsResult = JsonConvert.DeserializeObject<DataTable>(jObject.ToString());
给我:
Unexpected JSON token when reading DataTable. Expected StartArray, got StartObject. Path '', line 1, position 1.
如有任何帮助,我们将不胜感激。
我也使用 JSON 2 C# 创建了一个 class,并尝试使用
对其进行转换
JsonConvert.DeserializeObject<Employees>(Response.Content);
但是 classes 不允许我创建变量 public string Full-Name
因为我不能在创建变量时使用 - 。
有解决办法吗?
对数据 Table 使用 Json 2 C# to create your class and like @Plutonix said look here。
那个JSON是无效的,用这个来检查:http://jsonlint.com/
应该是
{
"DatabaseName": "Employees",
"Rows": [
{
"FullName": "John Smith",
"Address": [
"123 Main St",
"Apt 202"
],
"City": "NYC"
}
]
}
我知道以前有人问过这种问题,但我似乎找不到任何有效的方法。
我正在尝试将 JSON 字符串转换为数据表,或我可以在 C# 上使用的任何其他形式。
这是我收到的 JSON 文件的示例:
{ "DatabaseName" : {"Employees": [{"Full-Name":"John Smith","Address":["123 Main St", "Apt 202"],"City":"NYC"}]}}
我尝试了不同的方法,但要么得到一个空的数据表,要么出现许多不同的错误。
Object jObject = JsonConvert.DeserializeObject<JObject>(Response.Content);
DataTable dsResult = JsonConvert.DeserializeObject<DataTable>(jObject.ToString());
给我:
Unexpected JSON token when reading DataTable. Expected StartArray, got StartObject. Path '', line 1, position 1.
如有任何帮助,我们将不胜感激。
我也使用 JSON 2 C# 创建了一个 class,并尝试使用
对其进行转换JsonConvert.DeserializeObject<Employees>(Response.Content);
但是 classes 不允许我创建变量 public string Full-Name
因为我不能在创建变量时使用 - 。
有解决办法吗?
对数据 Table 使用 Json 2 C# to create your class and like @Plutonix said look here。
那个JSON是无效的,用这个来检查:http://jsonlint.com/
应该是
{
"DatabaseName": "Employees",
"Rows": [
{
"FullName": "John Smith",
"Address": [
"123 Main St",
"Apt 202"
],
"City": "NYC"
}
]
}