如何停止 newtonsoft json 驼峰式
How to stop newtonsoft json from camelcasing
配置:
- Azure Web API、C#、ASP.NET CORE 2.2
- Windows 客户端、C#、.NET Framework 4.7.2
- Newtonsoft JSON 用于服务器和客户端之间的序列化 objects
问题:
发送 DataTable
时,Newtonsoft JSON 始终将列标题更改为驼峰式。
例如,名为CostObjectKey
的列在传输后显示为costObjectKey
。
如何阻止 Newtonsoft 这样做?我希望我的列标题不变。
在您的初创公司 ConfigureServices
中,您可以添加 MvcJsonOptions
。
services
.AddMvc()
.AddJsonOptions(options =>
{
options.SerializerSettings.ContractResolver =
new Newtonsoft.Json.Serialization.DefaultContractResolver();
});
现在默认为驼峰式。如果您 need/want 所有 JSON 输出都采用 PascalCase,那么解决方案非常简单。
您需要做的就是指定 DefaultContractResolver。但这在 asp net core 3.
中不起作用
public void ConfigureServices(IServiceCollection services)
{
// Add framework services.
services.AddMvc()
.AddJsonOptions(options => options.SerializerSettings.ContractResolver = new DefaultContractResolver());
}
配置:
- Azure Web API、C#、ASP.NET CORE 2.2
- Windows 客户端、C#、.NET Framework 4.7.2
- Newtonsoft JSON 用于服务器和客户端之间的序列化 objects
问题:
发送 DataTable
时,Newtonsoft JSON 始终将列标题更改为驼峰式。
例如,名为CostObjectKey
的列在传输后显示为costObjectKey
。
如何阻止 Newtonsoft 这样做?我希望我的列标题不变。
在您的初创公司 ConfigureServices
中,您可以添加 MvcJsonOptions
。
services
.AddMvc()
.AddJsonOptions(options =>
{
options.SerializerSettings.ContractResolver =
new Newtonsoft.Json.Serialization.DefaultContractResolver();
});
现在默认为驼峰式。如果您 need/want 所有 JSON 输出都采用 PascalCase,那么解决方案非常简单。
您需要做的就是指定 DefaultContractResolver。但这在 asp net core 3.
中不起作用 public void ConfigureServices(IServiceCollection services)
{
// Add framework services.
services.AddMvc()
.AddJsonOptions(options => options.SerializerSettings.ContractResolver = new DefaultContractResolver());
}