c# - 如何使用 Json.NET 对特定属性进行驼峰式处理?
问题描述
我想使用 Json.NET 而不是所有属性来处理对象的特定属性。
我有一个这样的对象:
class A {
public object B { get; set; }
public object C { get; set; } // this property should be camel cased
}
我希望它被序列化为:
{ B: 1, c: 2 }
我遇到了这篇关于骆驼无条件封装所有属性的帖子,这是使用以下方法完成的:
var settings = new JsonSerializerSettings
{
ContractResolver = new CamelCasePropertyNamesContractResolver()
};
var json = JsonConvert.SerializeObject(a, settings);
但我找不到骆驼壳特定属性的对应问题。这是怎么做到的?
解决方案
您可以应用JsonPropertyAttribute's NamingStrategyType
到您想要驼峰式案例的领域:
class A
{
[JsonProperty(NamingStrategyType = typeof(CamelCaseNamingStrategy))]
public object C { get; set; }
}
或者您可以直接指定属性的名称:
class A
{
[JsonProperty("c")]
public object C { get; set; }
}
推荐阅读
- java - Shader Storage Buffer Object 元素读取优化
- excel - Excel将表格转换为行
- python - 是否可以为 RabbitMQ 创建一个 Apache Beam(在 python 中)IO 连接器
- tabbar - UITabBar 和 safeAreaLayoutGuide
- swift - 如何避免 UIImageView 中的 Optional nil 错误?
- java - 如何使用 Spring 中的数据库 oauth 登录 postman
- flutter - 如何使用 Flutter 向 Sentry 记录警告
- c++ - 为什么堆栈和堆在内存中如此分离?
- python - 一个笛卡尔积函数,可以为大型数组产生大量结果
- php - 试图获得非对象 Laravel 的属性“浴室”