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);
相关推荐
程序猿_极客6 分钟前
【2025】16届蓝桥杯 Java 组全题详解(省赛真题 + 思路 + 代码)
java·开发语言·职场和发展·蓝桥杯
玉树临风江流儿1 小时前
C++左值、右值、move移动函数
开发语言·c++
拾荒的小海螺1 小时前
JAVA:Spring Boot3 新特性解析的技术指南
java·开发语言·spring boot
程序猿20231 小时前
Python每日一练---第二天:合并两个有序数组
开发语言·python
椰羊sqrt1 小时前
CVE-2025-4334 深度分析:WordPress wp-registration 插件权限提升漏洞
android·开发语言·okhttp·网络安全
Js_cold2 小时前
Verilog任务task
开发语言·fpga开发·verilog
njxiejing2 小时前
Numpy一维、二维、三维数组切片实例
开发语言·python·numpy
一位搞嵌入式的 genius2 小时前
前端实战开发(四):从迭代器到异步编程:ES6 Generator 全面解析 + 实战问题排查
开发语言·前端·es6·前端实战
来来走走2 小时前
Android开发(Kotlin) 高阶函数、内联函数
android·开发语言·kotlin
Murphy_lx2 小时前
C++ thread类
开发语言·c++