C#中Newtonsoft.Json(Json.NET)的使用
C#中Newtonsoft.Json(Json.NET)的使用。
添加引用:
using Newtonsoft.Json;
调用代码:
//获取图书列表 List<BookInfo> bookList = GetBookList(); //将图书列表转换成Json string bookListJson = JsonConvert.SerializeObject(bookList); //将Json转换回图书列表 List<BookInfo> books = JsonConvert.DeserializeObject<List<BookInfo>>(bookListJson);
其他代码:
/// <summary> /// 图书信息实体类 /// </summary> public class BookInfo { public int BookId { set; get; } //图书ID public string Title { set; get; } //图书名称 public string Category { set; get; } //图书分类 public string Author { set; get; } //图书作者 public DateTime PublishDate { set; get; } //出版时间 public Double Price { set; get; } //销售价格 }
/// <summary> /// 获取图书列表 /// </summary> /// <returns></returns> public List<BookInfo> GetBookList() { List<BookInfo> bookList = new List<BookInfo>(); BookInfo book1 = new BookInfo() { BookId = 1, Category = "CHILDREN", Title = "Harry Potter", Author = "J K. Rowling", PublishDate = new DateTime(2005, 08, 15), Price = 29.99 }; bookList.Add(book1); BookInfo book2 = new BookInfo() { BookId = 2, Category = "WEB", Title = "Learning XML", Author = "Erik T. Ray", PublishDate = new DateTime(2003, 10, 18), Price = 39.95 }; bookList.Add(book2); return bookList; }
补充:如果某个字段不想被Json序列化,则可以在该字段上加上[Newtonsoft.Json.JsonIgnore]特性。
例如上述实例中的价格不想被Json序列化:
[Newtonsoft.Json.JsonIgnore] public Double Price { set; get; } //销售价格
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
2017-12-20 C/C++结构体字节对齐详解
2017-12-20 Sizeof与Strlen的区别与联系
2017-12-20 MFC各个控件之间运用SendMessage()传送CString和char[]字符串,以及int类型数据
2016-12-20 JAVA IDE IntelliJ IDEA使用简介(一)—之界面元素
2016-12-20 ASP.NET MVC的运行机制--url的全局分析