我正在使用 newtonsoft json 库。我想在以下 json 中将令牌“状态”的值从 false 更新为 true。我怎样才能做到这一点?:
{
"type": "FeatureCollection",
"Status": false,
"crs": {
"type": "EPSG",
"properties": {
"code": 28992
}
}
}
你可以反序列化它,修改值并再次序列化它
dynamic jsonObject = Newtonsoft.Json.JsonConvert.DeserializeObject(jsonString);
jsonObject.Status = true;
var modifiedJsonString = Newtonsoft.Json.JsonConvert.SerializeObject(jsonObject);
在这种情况下,令牌的名称是已知的(状态)。但是,当令牌的名称仅在运行时已知时(当名称作为参数传递时)。
string UpdateTokenValue(string jsonString, string TokenName, string newValue)
{
JObject jsonObj = (JObject)Netwonsoft.Json.JsonConvert.DeserializeObject(jsonstring);
jsonObj.Property(TokenName).Value = newValue;
return NewtonSoft.Json.JsonConvert.SerializeObject(jsonObj);
}