【发布时间】:2016-07-21 18:23:55
【问题描述】:
我有一个 json 字符串,我正在尝试使用 Newton 将其反序列化为对象列表。但它给了
错误无法反序列化当前的 JSON 对象(例如 {"name":"value"}) 转换为类型 'System.Collections.Generic.List
json字符串的格式是。
[ { "key": "1", "value": "Package1" }, { "key": "some name", "value": "Package2" } ]
模型定义为
public class RootObject
{
public string key { get; set; }
public string value { get; set; }
}
并且我使用下面的方法来反序列化它,其中json是上面列出的字符串。
var resultList = JsonConvert.DeserializeObject<List<RootObject>>(json);
我不确定我在哪里出错了,任何帮助将不胜感激。
【问题讨论】:
-
您确定这是您传递给反序列化方法的 json 文本吗?因为它对我来说应该完全没问题。你能把
json对象输出到控制台并粘贴到这里吗? -
你是否转义了引号?
var jsonData = "[ { \"key\": \"1\", \"value\": \"Package1\" }, { \"key\": \"some name\", \"value\": \"Package2\" } ]"; -
你所拥有的似乎在小提琴中工作正常:dotnetfiddle.net/CvKGau
-
感谢大家的帮助,Petre Turuc 就是问题所在。一旦我逃脱了报价,它就起作用了!