PascalCase в ядре asp.net только для одной версии API

В настоящее время я занимаюсь разработкой веб-API в asp.net core 1.0+. API использует versionning, поэтому у меня есть версия 1 и версия 2, где первая версия должна поддерживать старое приложение для Android. Проблема в том, что я хочу вернуть json версии 1 в PascalCase и версии 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
{
...
}

Надеюсь, кто-то может помочь

1 ответ

Решение

Я обнаружил, что вы можете украсить его следующим.

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

Тогда возвращаемое значение для имени будет PascalCase

Другие вопросы по тегам