这是我的 Json 数组
[
{
"gregdate": "06-03-2019",
"maldate": "22-07-1194",
"gregmonth": "March",
"selected_status": "1"
},
{
"gregdate": "04-05-2019",
"maldate": "21-09-1194",
"gregmonth": "May",
"selected_status": "1"
},
{
"gregdate": "03-06-2019",
"maldate": "20-10-1194",
"gregmonth": "June",
"selected_status": "1"
}
]
在这个 JSON 数组中,我想在不改变 JSON 对象的位置的情况下将第二个 JSON 对象“selected_status”值“1”更改为“0”。
您需要首先将对象数组转换为JArray
,然后将其第二个对象属性从 1 更改为 0,例如
string json = "You json here"; //Load your json
JArray jArray = JArray.Parse(json); //Parse it to JArray
var jObjects = jArray.ToObject<List<JObject>>(); //Get list of objects inside array
foreach (var obj in jObjects) //Loop through on a list
{
if (jObjects.IndexOf(obj) == 1) //Get 2nd object from array
{
foreach (var prop in obj.Properties()) //List 2nd objects properties
{
if (prop.Name == "selected_status") //Get desired property
obj["selected_status"] = 0; //Change its value
}
}
}
JArray outputArray = JArray.FromObject(jObjects); //Output array
选择:
正如布赖恩·罗杰斯 (Brian Rogers) 所建议的,您可以直接查询 JArray 以替换其特定的属性值,例如,
string json = "You json here"; //Load your json
JArray jArray = JArray.Parse(json); //Parse it to JArray
jArray[1]["selected_status"] = "0"; //Querying your array to get property of 2nd object
string outputJson = jArray.ToString(); //Output json
输出:(来自调试器)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句