gpt4 book ai didi

c# - Web API 从小写字母开始序列化属性

转载 作者:IT王子 更新时间:2023-10-29 03:48:54 26 4
gpt4 key购买 nike

如何配置我的 Web API 的序列化以使用 camelCase(从小写字母开始)属性名称而不是像 C# 中那样的 PascalCase

我可以为整个项目在全局范围内进行吗?

最佳答案

如果您想更改 Newtonsoft.Json aka JSON.NET 中的序列化行为,您需要创建您的设置:

var jsonSerializer = JsonSerializer.Create(new JsonSerializerSettings 
{
ContractResolver = new CamelCasePropertyNamesContractResolver(),
NullValueHandling = NullValueHandling.Ignore // ignore null values
});

您还可以将这些设置传递给 JsonConvert.SerializeObject:

JsonConvert.SerializeObject(objectToSerialize, serializerSettings);

用于 ASP.NET MVC 和 Web API。在 Global.asax 中:

protected void Application_Start()
{
GlobalConfiguration.Configuration
.Formatters
.JsonFormatter
.SerializerSettings
.ContractResolver = new CamelCasePropertyNamesContractResolver();
}

排除空值:

GlobalConfiguration.Configuration
.Formatters
.JsonFormatter
.SerializerSettings
.NullValueHandling = NullValueHandling.Ignore;

表示空值不应包含在生成的 JSON 中。

ASP.NET 核心

默认情况下,ASP.NET Core 以驼峰命名法序列化值。

关于c# - Web API 从小写字母开始序列化属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22130431/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com