场景
C#中使用Newtonsoft.Json实现对Json字符串的解析:
C#中使用Newtonsoft.Json实现对Json字符串的解析_霸道流氓气质的博客-CSDN博客
上面讲的对JSON字符串进行解析,实际就是JSON对象的反序列化。
在与第三方进行交互时常需要封装对象,存储各种属性消息,然后将
对象序列化为json字符串并进行发送传输。
注:
博客:
霸道流氓气质_C#,架构之路,SpringBoot-CSDN博客
实现
1、可直接解决方案资源管理器-引用-管理Nugut程序包-浏览中搜索
Newtonsoft.Json进行安装
2、封装对象
/// <summary>
/// api 状态
/// </summary>
class ApiState
{
//连通状态
public int connectState { get; set; }
//连通状态监测时间
public string connectStateMonitorTime { get; set; }
//服务状态
public int serviceState { get; set; }
//服务状态监测时间
public string serviceStateMonitorTime { get; set; }
}
3、对象赋值
ApiState apiState = new ApiState();
apiState.connectState = 0;
apiState.connectStateMonitorTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
apiState.serviceState = 0;
apiState.serviceStateMonitorTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
4、序列化对象为json字符串
string json1 = JsonConvert.SerializeObject(apiState);
Console.WriteLine(json1);
5、反序列化json字符串为对象
//{"connectState":0,"connectStateMonitorTime":"2023-09-22 15:36:13","serviceState":0,"serviceStateMonitorTime":"2023-09-22 15:36:13"}
ApiState apiState2 = JsonConvert.DeserializeObject<ApiState>(json1);
Console.WriteLine(apiState2.connectState+apiState2.connectStateMonitorTime);