我正在尝试使用NewtonSoft库中的DeserializeObject
,但我遇到了一个困扰我的问题。
我对这个图书馆很新,所以为了更好地理解它我从官方网站上看了下面的example。
使用该资源,我修改它以满足我的需要,这是我的班级:
public class Project
{
[JsonProperty ("team")]
public string Team{ get; set; }
[JsonProperty("details")]
public string Details { get; set;}
}
以下是代码:
Project project = new Project();
string json_string = File.ReadAllText(@"C:\file.json", Encoding.UTF8);
project = JsonConvert.DeserializeObject<Projets>(json_string);
这是.json文件模板:
{
"Team": "nameOfTeam",
"Details": [
{
"detail1": "Unknown",
"detail2": "Unknown"
}
]
}
问题是,在运行期间有一个例外,其中包含以下消息
解析值时遇到意外的字符:[。路径'详细信息',第X行,第XX位。
我不明白字符“[”在这里是怎么回事,我错过了什么?
答案 0 :(得分:2)
Details
是C#类中的字符串,而它是JSON对象中的数组。要么使它成为JSON中的字符串,要么将属性改为IList<string>
。