我是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吗?
答案 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);