asp.net 内核中的 PascalCase 仅适用于 API 的一个版本

PascalCase in asp.net core for only one version of the API

我目前正在 asp.net 核心 1.0+ 中开发 Web API。 API 使用版本控制,所以我有版本 1 和版本 2,其中第一个版本支持旧的 android 应用程序。问题是我想 return PascalCase 版本 1 的 json 和版本 2 作为 camelCase,如何实现?

我知道你可以把它放在你的启动文件中,但我不希望它对所有 API 版本都是全局的。

 public void ConfigureServices(IServiceCollection services)
{
    services.AddMvc()
        .AddJsonOptions(options => options.SerializerSettings.ContractResolver = new DefaultContractResolver());
}

关于我如何在 api 上使用版本的示例:

[ApiVersion("1")]
[Route("api/[controller]")]
[Route("v{version:apiVersion}/[controller]")]
public class CustomerController : Controller
{
...
}

希望有人能帮忙

我发现你可以用下面的装饰它。

[JsonProperty("Name")]
public string Name { get; set; }

那么 name 的返回值将是 PascalCase