将数组添加到对象列表中

本文关键字:列表 对象 数组 添加 | 更新日期: 2023-09-27 18:29:35

这是创建json对象的类

    public class RootObject
    {
        public string name { get; set; }
        public string id { get; set; }
        public string school { get; set; }
        public List<object> details{ get; set; }
    }

这就是我创建新对象的方式

        var obj = new RootObject();
        obj.name= "test";
        obj.id = "null";
        obj.school = "something else";

然后我使用JavaScriptSerializer序列化对象(这很好)我需要在这个对象"详细信息"列表中添加一个数组,以获得如下内容:

{
  "name ":"test",
  "id":null,
  "school ":"something else",
  "details":["details1","detail2"]
}

我试图以字符串或逐元素的形式添加,但没有成功。我该如何解决这个问题?

将数组添加到对象列表中

我强烈建议您只使用Json.NET:

obj.details = new List<object>
{
    "details1", "details2"
};

然后,JsonConvert.SerializeObject(obj, Formatting.Indented)给出:

{
  "name": "test",
  "id": "null",
  "school": "something else",
  "details": [
    "details1",
    "details2"
  ]
}

您需要初始化List:

obj.details = new List<object>();

然后添加数据:

obj.details.Add("Details1");
obj.details.Add("Details2");