JsonConvert.SerializeObject读取结构,但不读取值



我尝试了这段源代码(基于NewtonSoft的JSON NuGet库(,用于将JSON文件读取为JSON对象:

string str_File_Content = File.ReadAllText(openFileDialog1.FileName);
Rootobject existing_root = JsonConvert.DeserializeObject<Rootobject>(str_File_Content);

它几乎成功了:所有JSON对象都加载到existing_root中,在数组的情况下,对象的数量似乎是正确的。

但是:属性的值似乎没有填写,正如您在这里看到的:

JSON文件摘录:

{
"project": {
"common.DESCRIPTION": "Some information",

观察窗口中的existing_root摘录:

Expected    :existing_root.project.commonDESCRIPTION : Some information
Real result :existing_root.project.commonDESCRIPTION : null

为了使JsonConvert.DeserializeObject()不仅处理结构,而且处理值,我能做些什么?

您的json属性名称包含"quot;符号,它对C#属性名称无效,因此您可以指定在使用JsonPropertyAttribute:进行(反(序列化期间使用的正确名称

public class Project
{
[JsonProperty("common.DESCRIPTION")]
public string commonDESCRIPTION { get; set; }
}

相关内容

  • 没有找到相关文章

最新更新