C# 将数组添加到属性
我正在试图找到一种方法,将数组添加到属性中。目前,我正在添加非arry,没有任何问题 var root=JObject.ParsecontractJson.ToString; //获取公司名称节点 var companyNameMatches=root.subjects .字体 .其中x=>x[问题]!=null&&x[问题].ToString==公司名称; //将应答结果添加到“公司名称”节点 foreach JObject jo在CompanyName中匹配 { jo.Addanswer,new JObjectnew JPropertyresult,Request.Form[Companyname].ToString; } 那么,这一行…如何将答案放入数组中: jo.Addanswer,new JObjectnew JPropertyresult,Request.Form[Companyname].ToString; 正在查找此输出:C# 将数组添加到属性,c#,asp.net-core,json.net,C#,Asp.net Core,Json.net,我正在试图找到一种方法,将数组添加到属性中。目前,我正在添加非arry,没有任何问题 var root=JObject.ParsecontractJson.ToString; //获取公司名称节点 var companyNameMatches=root.subjects .字体 .其中x=>x[问题]!=null&&x[问题].ToString==公司名称; //将应答结果添加到“公司名称”节点 foreach JObject jo在CompanyName中匹配 { jo.Addanswer,n
"answer":[
{
"result": "value"
}
]
这是因为您正在使用JObject 使用JArray对象。JArray是一个JContainer,它是一个JToken,可以添加到JObject中 例如,用户的json:
string[] parameterNames = new string[] { "Test1", "Test2", "Test3" };
JArray jarrayObj = new JArray();
foreach (string parameterName in parameterNames)
{
jarrayObj.Add(parameterName);
}
string bDay = "2011-05-06";
string email = "dude@test.com";
JObject UpdateTestProfile = new JObject(
new JProperty("_delete", jarrayObj),
new JProperty("birthday", bDay),
new JProperty("email", email));
Console.WriteLine(UpdateTestProfile.ToString());
这是因为您正在使用JObject 使用JArray对象。JArray是一个JContainer,它是一个JToken,可以添加到JObject中 例如,用户的json:
string[] parameterNames = new string[] { "Test1", "Test2", "Test3" };
JArray jarrayObj = new JArray();
foreach (string parameterName in parameterNames)
{
jarrayObj.Add(parameterName);
}
string bDay = "2011-05-06";
string email = "dude@test.com";
JObject UpdateTestProfile = new JObject(
new JProperty("_delete", jarrayObj),
new JProperty("birthday", bDay),
new JProperty("email", email));
Console.WriteLine(UpdateTestProfile.ToString());
您需要将answer属性设置为数组,因此应该使用JArray。更改此行:
jo.Add("answer", new JObject(new JProperty("result", Request.Form["Companyname"].ToString())));
致:
您需要将answer属性设置为数组,因此应该使用JArray。更改此行:
jo.Add("answer", new JObject(new JProperty("result", Request.Form["Companyname"].ToString())));
致:
您当前正在将其设置为单个字符串值-是否希望它成为包含该单个字符串的数组?如果是的话,你试过这样做吗?新建JPropertyresult,新建[]{Request.Form[Companyname].ToString}嗨,Jon。我应该更具描述性。我在找:``答案:[{result:value}]``我建议你进一步编辑这个问题-你说你想把结果变成数组,但你不想-你想把答案变成数组。@JonSkeet是的,谢谢你指出这一点。我已进行了建议的编辑。您当前正在将其设置为单个字符串值-是否希望它成为包含该单个字符串的数组?如果是的话,你试过这样做吗?新建JPropertyresult,新建[]{Request.Form[Companyname].ToString}嗨,Jon。我应该更具描述性。我在找:``答案:[{result:value}]``我建议你进一步编辑这个问题-你说你想把结果变成数组,但你不想-你想把答案变成数组。@JonSkeet是的,谢谢你指出这一点。我已经做了建议的编辑。