【发布时间】:2015-07-02 06:24:04
【问题描述】:
接收到的数据是这样的:
在每个项目中,都有一个对象,customer,我有一个相同的类。如何使用 Json.net 转换它们?
我尝试了以下方法:
var data = JsonConvert.DeserializeObject<List<customer>>(val);
并添加另一个类:
public class customerJson
{
public Customer customer{ get; set; }
}
并试图反序列化它:
var data = JsonConvert.DeserializeObject<List<customerJson>>(val);
我得到了一个例外:
无法将当前 JSON 对象(例如 {"name":"value"})反序列化为类型 'System.Collections.Generic.List`1[customer]',因为该类型需要 JSON 数组(例如 [1,2 ,3]) 正确反序列化。 要修复此错误,要么将 JSON 更改为 JSON 数组(例如 [1,2,3]),要么将反序列化类型更改为普通的 .NET 类型(例如,不是像整数这样的原始类型,而不是像这样的集合类型可以从 JSON 对象反序列化的数组或列表。 JsonObjectAttribute 也可以添加到类型中以强制它从 JSON 对象反序列化。 路径“行”,第 1 行,位置 8。
数据:
{"rows":[{"id":"232333","name":"nam"},{"id":"3434444","name":"2ndName"}]}
【问题讨论】:
-
请显示您收到的 JSON 的 文本 - 那张图片真的一点用都没有。你也没有说你已经尝试过的任何一种方法发生了什么。