Настройте форматер Json только для WebAPI 2, а не глобально - PullRequest
0 голосов
/ 11 декабря 2018

Мне нужно, чтобы мои ответы json из Web API 2 были отформатированы с помощью camelCase, поэтому я добавил следующую строку в конструктор класса базового контроллера:

GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();

Это работает, но вызывает некоторые проблемы сDnn, приложение Asp.net Framework 4.5, на котором оно основано.

Я также пытался установить это через свойство ActionContext ApiController:

ActionContext.ControllerContext.Configuration.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();

Но объект конфигурации всегда нулевой.

Есть ли способ настроить JsonFormatters только для WebAPI?Я понимаю, что могу украсить каждое свойство атрибутами, меняя случай, когда Newtonsoft будет выводить объекты Json, но я действительно не хочу делать это для всех моих ресурсов API.

...