Newtonsoft.Json将大文件反序列化为对象(带列表)c#

时间:2018-03-13 18:18:37

标签: c# json json.net deserialization

我有一个看起来像这样的JSON文件......

 [
          {  
             "words":[  
                "test1",
                "test2,
             ],
             "id":50,

          },
          {  
             "words":[  
                "test1",
                "test2",
                "test3",
             ],
             "id":25,
          }
       ]

我想将此反序列化为以下对象... 我已经制作了两个我想要使用的课程......

public class Record
  {
    private List<Word> Words { get; set;  }
    private int Id { get; set; }
  }



public class Word
  {
    private String Tekst;

    public Word(string tekst)
    {
      Tekst = tekst;
    }
  }

我尝试过很多东西,但是我总是会遇到这样的错误。它不能放在单词列表中,就像那样。

是否可以使用Newtonsoft.Json来实现这一目标?

请帮帮我们

1 个答案:

答案 0 :(得分:1)

你的模特应该是

public class Record
{
    public List<string> Words { set; get; }
    public long Id { set; get; }

}
public class AllRecords
{
    public List<Record> Records { set; get; }
}

现在您可以反序列化为

var list = JsonConvert.DeserializeObject<AllRecords>(yourjson);

编辑 - 为您的新Json

var list = JsonConvert.DeserializeObject<List<Record>>(yourjson);