AddJsonFormatters в моем веб-приложении ASP.NET MvcCore не устанавливает правильные настройки json

44
2

Я пытаюсь вручную определить некоторые настройки json для своих ответов в веб-приложении ASP.NET MVC Core. Учитывая следующий код, он не работает:

services.AddMvcCore()
... <snip a few services>
.AddJsonFormatters(options => options = JsonHelpers.JsonSerializerSettings);

а также

public static JsonSerializerSettings JsonSerializerSettings 
{
get
{
var settings = new JsonSerializerSettings
{
ContractResolver = new CamelCasePropertyNamesContractResolver(),
Formatting = Formatting.None,
NullValueHandling = NullValueHandling.Include,
DateFormatHandling = DateFormatHandling.IsoDateFormat
};

settings.Converters.Add(new StringEnumConverter());
return settings;
}
}

Я предполагаю, что мне нужно вручную указать каждую настройку во время настройки. Вместо этого определите новый экземпляр настроек. (Я проверю это через секунду).

например

services.AddMvcCore()
.AddJsonFormatters(o =>
{
o.ContractResolver = new CamelCasePropertyNamesContractResolver();
o.NullValueHandling = NullValueHandling.Ignore;
});

Итак, почему я не могу использовать свой экземпляр вместо того, чтобы вручную устанавливать каждое свойство? Мои первоначальные соображения состояли в том, что я использую эти настройки json в ДРУГИХ частях моей системы, поэтому я хотел иметь одно место для определения настроек, а в других местах - тот же самый экземпляр. Таким образом, мне не нужно вручную обновлять несколько мест в коде.

спросил(а) 2017-11-27T02:19:00+03:00 2 года назад
0
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема