c# string AlarmLevelSetting = "{\"3\":{\"duration\":25920,\"notification\":[1]}}" 反序列化实体对象
时间: 2024-12-12 07:15:05 浏览: 4
在C#中,给定的JSON字符串`string AlarmLevelSetting = "{\"3\":{\"duration\":25920,\"notification\":[1]}}`描述了一个嵌套的数据结构,其中包含一个整数`duration`和一个整数数组`notification`。为了反序列化它并将其转换为一个实体对象,我们可以创建一个对应的C#类来表示这个结构。假设我们有如下类:
```csharp
public class AlarmLevelSetting
{
public int Key { get; set; }
public NotificationInfo Info { get; set; }
}
public class NotificationInfo
{
public int Duration { get; set; }
public List<int> Notifications { get; set; }
}
```
然后你可以使用`Newtonsoft.Json`库(旧版本的`Json.NET`)来完成反序列化:
```csharp
using Newtonsoft.Json;
AlarmLevelSetting obj = JsonConvert.DeserializeObject<AlarmLevelSetting>(AlarmLevelSetting);
int duration = obj.Info.Duration;
List<int> notifications = obj.Info.Notifications;
```
这里,`Deserialization`过程会自动填充`AlarmLevelSetting`实例的属性,`Info`对象则包含了单独的`Duration`和`Notifications`属性。
阅读全文