San*_*Rao 4 c# asp.net json json.net asp.net-web-api
我有一个 json 数据作为输入字符串。现在我需要用输入的 Json 数据更新现有的 Json 数据。就我而言,我想遍历每个键并与现有 Json 数据进行匹配,然后使用输入 Json 数据更新该键的值。
检索现有数据的代码
var existingJSon = ProductRepository.ListOfProd.Cast<JArray>().Where(x => x["ProdId"].ToString() == id.ToString());
Run Code Online (Sandbox Code Playgroud)
检索数据后,我现有的 Json 将如下所示。
{
ProdId:"1",
Title:"C#",
Author:"Jeffy",
Publisher:"XYZ",
Category:"Microsoft"
}
Run Code Online (Sandbox Code Playgroud)
现在我需要循环遍历作为输入的每个键并与现有的 Json 键匹配并更新该键的值。
输入并更新后应如下所示:
{
ProdId:"1",
Title:"C#",
Author:"Jeffy",
Publisher:"abcd",
Category:"Microsfot Basic .Net Development Kit"
}
Run Code Online (Sandbox Code Playgroud)
看看这是否对您有帮助,我们可以使用Newtonsoft反序列化未知类型并循环键和值。
string json = "{ProdId:\"1\",Title:\"C#\",Author:\"Jeffy\",Publisher:\"XYZ\",Category:\"Microsoft\"}";
JObject obj = JsonConvert.DeserializeObject < JObject>(json);
var properties = obj.Properties();
foreach (var prop in properties)
{
string key = prop.Name;
object value = prop.Value;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3984 次 |
| 最近记录: |