JSON.NET won'不反序列化到我的对象,抛出一个异常

本文关键字:异常 一个 对象 我的 won NET 反序列化 JSON | 更新日期: 2023-09-27 18:11:55

我的JSON (myString)是这样的:

"http://d.opencalais.com/dochash-1/0701d73f-2f99-39e1-8c29-e61ee8bf3238/cat/1":
{
  "_typeGroup": "topics",
  "category": "http://d.opencalais.com/cat/Calais/Law_Crime",
  "classifierName": "Calais",
  "categoryName": "Law_Crime",
  "score": 0.869
}

我正在尝试将上面的字符串反序列化成一个对象:

public class OpenCalaisResult
{
    public string _typeGroup {get; set; }
    public string category { get; set; }
    public string categoryName { get; set; }
    public string classifierName { get; set; }
    public decimal score { get; set; }
}

我正在尝试这个代码:

OpenCalaisResult myObject = (OpenCalaisResult)JsonConvert.DeserializeObject(myString, typeof(OpenCalaisResult), settings);

我得到一个异常:

{"转换值错误' " http://d.opencalais.com/dochash-1/0701d73f-2f99-39e1-8c29-e61ee8bf3238/cat/1 '"输入' myapp . parser . jsontypes . opencalaisresult '。路径,第一行,第78位。"}

你知道我做错了什么吗?

JSON.NET won'不反序列化到我的对象,抛出一个异常

你的json应该是这样的

 {
 "http://d.opencalais.com/dochash-1/0701d73f-2f99-39e1-8c29-e61ee8bf3238/cat/1":
  {
    "_typeGroup": "topics",
    "category": "http://d.opencalais.com/cat/Calais/Law_Crime",
    "classifierName": "Calais",
    "categoryName": "Law_Crime",
    "score": 0.869
   }
  }

http://www.json.org/

显示对象的形式为…

{…}

JSON的格式是…

x:{…}

我猜'x'是被[去]序列化的类的类型…我不相信你的库支持它。

JSON支持有点随机