从C#中的对象列表中获取JSON文件

时间:2018-10-09 08:13:56

标签: c# json list class enumerable

我是C#的新手,所以请忍受:)

我有一个这样的人名单:

List<Person> PersonsList = new List<Person>();

每个人都有三个属性:

public string Name { get; set; }
public string Number{ get; set; }
public Adress Adress { get; set; }

我要从文本文件填充它,现在我需要将列表更改为JSON文件。

var list = Enumerable.Repeat(PersonsList , PersonsList.Count);
  var json =JsonConvert.SerializeObject(list); 

但是我知道它不起作用,因为我没有遍历Enumerable.Repeat中的PersonsList

您能帮我解决一下plz吗?

4 个答案:

答案 0 :(得分:1)

好的,在我看来,您使用的Enumerable.Repeat()错误。它接受一个对象,并重复指定的时间。所以您似乎已经使PersonsList.Count新的PersonsList的数量...

您看到的是问题吗?

编辑: 至于解决方法。我只是直接序列化PersonsList。除非在这里我误解了。

答案 1 :(得分:1)

如果我了解您的要求是正确的,您想再次将PersonsList序列化为json吗?只需使用

var jsonString = JsonConvert.SerializeObject(PersonsList);

答案 2 :(得分:1)

这是错误的。

var list = Enumerable.Repeat(PersonsList , PersonsList.Count);
var json =JsonConvert.SerializeObject(list); 

您只需要做:

string jsonPersonsList = JsonConvert.SerializeObject(PersonsList); 

答案 3 :(得分:1)

尝试:

var List = JsonConvert.SerializeObject(PersonsList);