如何使用NewtonSoft更新JSON对象的属性

我有一个像这样的JSON字符串:

{

"code": "GENDER",

"value": { "option": "ML" }

}

我想将option属性更新为,"Male"如果值为,"ML"并且"Female"值为"FM"

我已经到了这一点,但是不确定如何进行:

JArray contentobject = (JArray)JsonConvert.DeserializeObject(contentJSON);  

JObject voicgObj = contentobject.Children().FirstOrDefault(ce => ce["code"].ToString() == "GENDER") as JObject;

JProperty voicgProp = voicgObj.Property("value");

我不知道怎么去的option是一个孩子value

提前致谢。任何指针都很棒。

回答:

您可以使用属性作为键来访问对象:

JObject obj = JObject.Parse(json);

string gender = (string)obj["value"]["option"];

对于您的示例,请尝试:

JObject obj = JObject.Parse(json);

var val = obj["value"];

string option = (string)val["option"];

if (option == "ML")

val["option"] = "Male";

if (option == "FM")

val["option"] = "Female";

string result = obj.ToString();

以上是 如何使用NewtonSoft更新JSON对象的属性 的全部内容, 来源链接: utcz.com/qa/404681.html

回到顶部