C# 如何使用 System.Text.Json 启用不区分大小写的属性名称

本文将介绍如何使用 System.Text.Json 命名空间启用不区分大小写的属性名称匹配。

不区分大小写的属性匹配

默认情况下,反序列化会查找 JSON 与目标对象属性之间区分大小写的属性名称匹配。 若要更改该行为,请将 JsonSerializerOptions.PropertyNameCaseInsensitive 设置为 true

备注

Web 默认值为不区分大小写。

C#复制

复制代码
var options = new JsonSerializerOptions
{
    PropertyNameCaseInsensitive = true
};
var weatherForecast = JsonSerializer.Deserialize<WeatherForecast>(jsonString, options);

下面是具有 camel 大小写属性名称的示例 JSON。 它可以反序列化为具有帕斯卡拼写法属性名称的以下类型。

JSON复制

复制代码
{
  "date": "2019-08-01T00:00:00-07:00",
  "temperatureCelsius": 25,
  "summary": "Hot",
}

C#复制

复制代码
public class WeatherForecast
{
    public DateTimeOffset Date { get; set; }
    public int TemperatureCelsius { get; set; }
    public string? Summary { get; set; }
}
相关推荐
T___T3 分钟前
React Props:从基础使用到高级组件封装
前端·react.js
C雨后彩虹3 分钟前
5G网络建设
java·数据结构·算法·华为·面试
汉堡大王95274 分钟前
React组件通信全解:父子、子父、兄弟及跨组件通信
前端·javascript·前端框架
霍理迪4 分钟前
CSS继承,优先级以及字体样式
前端·css
LeeHK7 分钟前
在项目中调试vue2源码,watch,nextTick执行顺序梳理
前端
码界奇点9 分钟前
基于Spring Boot的后台管理系统设计与实现
java·spring boot·后端·车载系统·毕业设计·源代码管理
爱敲点代码的小哥9 分钟前
json序列化和反序列化 和 数组转成json格式
java·前端·json
零度念者13 分钟前
Java IO/NIO 深度解析:从底层原理到高性能图片网关实战
java·nio
林太白16 分钟前
2025 AI浪潮下的编程之路:我的天工项目与终身学习
前端·后端·trae