C#如何将项目的json数组添加到ExpandooObject?

C#如何将项目的json数组添加到ExpandooObject?,c#,arrays,json,dynamic,C#,Arrays,Json,Dynamic,如何创建prop3并在ExpandoObject语法中包含开头([)和结尾(])大括号 prop3是一个数组,那么如何将userId和userName添加到ExpandoObject { "prop1": "value1", "prop2": "value2", "prop3": [ "userId", "use

如何创建
prop3
并在
ExpandoObject
语法中包含开头([)和结尾(])大括号

prop3
是一个数组,那么如何将
userId
userName
添加到
ExpandoObject

{
    "prop1": "value1",
    "prop2": "value2",
    "prop3": [
        "userId",
        "userName"
    ],
}
    
// my ExpandoObject syntax
    
dynamic form = new ExpandoObject();
    
form.prop1 = "value1";
form.prop2 = "value2";
    
// what ExpandoObject syntax do I use to add the the json array now 
// including the [ ] and each single value to the array?
你可以用这个

form.prop3 = new[] { "userId", "userName" };

首先,需要使用
dynamic
array初始化属性,然后可以使用索引将值放入其中。见:

dynamic form = new ExpandoObject();
form.prop1 = "value1";
form.prop2 = "value2";
form.prop3 = new dynamic[2]; // initialized with 2 indexes
form.prop3[0] = "userId"; 
form.prop3[1] = "userName";
这是生成Json时得到的响应:

{
  "prop1": "value1",
  "prop2": "value2",
  "prop3": [
    "userId",
    "userName"
  ]
}