JsonSerializerSettings默认大小写模式是什么?如何设置为Pascal大小写?
JsonSerializerSettings 大小写模式相关问题
默认大小写模式
JsonSerializerSettings(Newtonsoft.Json)的默认行为是直接沿用类属性的原始命名,不会自动转换大小写。如果你的类属性采用Pascal大小写(比如UserName),默认序列化后JSON字段就是"UserName";如果属性是驼峰式,序列化结果就是驼峰式。严格来说它没有预设的"默认大小写模式",只是保留属性本身的命名格式——所以不能说默认就是Pascal大小写,它只是跟着属性命名走。
启用Pascal大小写模式的方法
如果需要强制序列化/反序列化时统一使用Pascal大小写(不管类属性原本的命名),可以通过配置ContractResolver和命名策略实现:
var settings = new JsonSerializerSettings { ContractResolver = new DefaultContractResolver { NamingStrategy = new PascalCaseNamingStrategy() } };
补充说明
PascalCaseNamingStrategy会将所有属性名称转换为Pascal格式(首字母大写,后续字母按规则调整,比如原属性userName会转为UserName)。- 要是你只是想保持类属性本身的Pascal命名(无需强制转换),默认设置就足够——只要类属性是Pascal格式,序列化结果自然就是Pascal大小写。
内容的提问来源于stack exchange,提问作者Kevin Jang
相关产品推荐
相关产品推荐

