{[ { "ActivityId": "1.2", "IsEnabled": true, "DisplayName": "WriteLine3" } ]}如何获取这个json字符串里DisplayName的值
时间: 2023-08-26 13:06:33 浏览: 192
你提供的 JSON 字符串有一点错误,应该是使用大括号 `{}` 包裹对象,而不是使用方括号 `[]`。下面我会修正一下,并提供获取 `DisplayName` 值的代码示例:
```csharp
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
string json = @"{
""ActivityId"": ""1.2"",
""IsEnabled"": true,
""DisplayName"": ""WriteLine3""
}";
var jsonObject = JsonConvert.DeserializeObject<Dictionary<string, object>>(json);
if (jsonObject.TryGetValue("DisplayName", out object displayNameObject))
{
string displayName = displayNameObject.ToString();
Console.WriteLine($"DisplayName: {displayName}");
}
else
{
Console.WriteLine("未找到 DisplayName");
}
```
在上述示例中,我们使用 `JsonConvert.DeserializeObject` 方法将 JSON 字符串转换为 `Dictionary<string, object>` 类型的对象 `jsonObject`。然后,我们尝试从该对象中获取键为 "DisplayName" 的值,将其转换为字符串类型。
需要注意的是,上述代码中使用了 Newtonsoft.Json 库来进行 JSON 的序列化和反序列化操作。你需要在项目中引用该库,可以通过 NuGet 包管理器安装 Newtonsoft.Json 包。另外,由于我们不知道 JSON 中的数据结构,所以我们将其转换为 `Dictionary<string, object>`,这样可以获取到所有的键和对应的值。如果你知道 JSON 的结构,也可以定义相应的类来进行反序列化。
阅读全文