【发布时间】:2019-08-15 10:04:15
【问题描述】:
所以我正在努力解析以下 JSON 字符串。即使在 StackOverflow 上研究了许多问题之后。
json
[
{
"text": {
"0": "Element 1"
},
"cascade": [],
"val": "1"
},
{
"text": {
"0": "Element 2"
},
"cascade": [],
"val": "2"
},
{
"text": {
"0": "Element 3"
},
"cascade": [],
"val": "3"
},
{
"text": {
"0": "Unknown"
},
"cascade": [],
"val": "0"
}
]
我为此创建的类如下所示:
选项.cs
using System.Collections.Generic;
namespace App.Models
{
public class Options
{
public ICollection<IDictionary<string, string>> text { get; set; }
public List<string> cascade { get; set; }
public string val { get; set; }
}
}
为了运行反序列化,我编写了以下行:
List<Options> optionList = JsonConvert.DeserializeObject<List<Options>>(inputString);
我在尝试运行代码时遇到以下异常:
Newtonsoft.Json.JsonSerializationException: 超时获取异常详细信息
【问题讨论】:
-
试试
public Dictionary<string, string> text { get; set; } -
如果您将 JSON 粘贴到 json2csharp.com 中,它将为您建议一个数据结构。这可能不是唯一的方法,但它会建议一些可能有效的方法。注:
List<string>在您的代码中似乎不适合“级联”,因为它是 JSON 中的一个数组。
标签: c# json deserialization