Json.net捕获重复项并抛出错误
可能重复:
Json.NET(Newtonsoft.Json) – 两个同名的“属性”?
我正在使用JSON.NET将JSON文件反序列化为字典。 现在我想做的是有以下几行:
JsonConvert.DeserializeObject<IDictionary>(text);
如果JSON中有重复条目,则抛出exception,如下所示:
{ "ExampleText": "Example 1", "ExampleText": "Example 2", "ExampleText": "Example 3", }
标准的JSON.NET行为只是将“ExampleText”条目替换为JSON中最后一个条目。 是否可以抛出exception?
– 编辑 –
您不需要反序列化为IDictionary
。 JObject
已经实现了IDictionary
var obj = (JObject)JsonConvert.DeserializeObject(json); //will throw exception for dublicates. var str = (string)obj["ExampleText"];
如果你看看msdn中的IDictionary
“每个协会必须有一个唯一的密钥”
您在重复键中的问题。 我想你应该使用另一个系列。
试试这个
class MyValue { public string Key {get; set;} public string Value {get; set;} } JsonConvert.DeserializeObject>(text);
- 如何将SET IDENTITY_INSERT dbo.myTable置于ON语句中
- 你可以从另一个线程访问UI元素吗? (没有设定)
- ASP.NET Web API操作方法参数的dependency injection
- 使用SendInput发送超出U + FFFF的unicode字符
- 使用RegisterHotKey检测Ctrl + V但不截取它
- Azure – 删除ADLS文件时出现ADlsError / WebHDFS错误
- Process.Start(“telnet.exe”)抛出exception
- 自定义TabItem DataTemplate
- 我应该直接在代码中使用Linq To SQL还是使用其他方法?