[英]Add property to each object in JSON C#
我有一个看起来像这样的 JSON 主体(对象数组):
[
{
"registered": "2016-02-03T07:55:29",
"color": "red",
},
{
"registered": "2016-02-03T17:04:03",
"color": "blue",
}
]
这个主体包含在我基于 HTTP 请求创建的变量(requestBody)中,它被称为 req:
string requestBody = await new StreamReader(req.Body).ReadToEndAsync();
我想要做的是为我的 JSON 数组中的每个对象添加一个唯一标识符。 我怎么能 go 实现这一目标?
目前我正在反序列化 JSON,向其中添加一些字符串(x),然后再次对其进行序列化:
dynamic d = JsonConvert.DeserializeObject(requestBody);
d.uniqueId = "x";
string newBody = JsonConvert.SerializeObject(d);
我要为我的 JSON 对象数组中的每个对象添加一个 uniqueId。 我怎么能做到这一点?
您可以使用从JArray
到 JSON API 的 JArray来解析、迭代JObject
类型的子对象并修改它们:
var json = ...; // your json string
var jArray = JArray.Parse(json);
foreach (var jObject in jArray.Children<JObject>())
{
jObject.Add("id", new JValue("x"));
}
var modified = JsonConvert.SerializeObject(jArray);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.