C#中使用Newtonsoft.Charp实现Json对象序列化与反序列化

场景

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);
相关推荐
小徐不徐说4 小时前
序列化与反序列化:把 C++ 对象可靠地保存下来
开发语言·数据库·c++·php
ragnwang4 小时前
Notes: Python pybind11 import C++ module
开发语言·c++·python
Wang's Blog4 小时前
Java 项目实战: 交友项目 - 搜索附近的功能概述和分析
java·开发语言·交友
骑着蜗牛撵大象3274 小时前
大模型 Agent 的沙箱护栏:gVisor 隔离、出口白名单与审计闭环
java·开发语言·jvm·安全·agent沙箱·gvisor·microvm
Dxy12393102165 小时前
JS DES 加密详解
开发语言·javascript·arcgis
充值内卷5 小时前
我给桌面加了个鱼缸:C++ 写后端,WebView2 里养一座 Three.js 小岛
开发语言·javascript·c++
云和数据.ChenGuang5 小时前
深入解析 Python 的 dir():从用法到 CPython 源码实现
开发语言·人工智能·python·langchain
nice_lcj5206 小时前
深入理解 Java 反射:从 Class 对象到方法调用(含性能实测 + 迷你 IOC 实战 + 面试考点)
java·开发语言·后端·面试
樱花树下的数学喵8 小时前
手写简易 STL string|C++ 字符串底层实现
开发语言·c++
jimy19 小时前
C++ 报错的 qualifiers 的意思
开发语言·c++