У меня есть пользовательский атрибут фильтра, адаптированный из этот ответ , в настоящее время реализованный для. NET Core 2.2, который я хотел бы адаптировать к 3.1. Он ссылается на Newtonsoft. JSON, и я бы предпочел оставить его таким по соображениям совместимости.
Код выглядит следующим образом:
public class AllPropertiesAttribute : ActionFilterAttribute
{
public override void OnActionExecuted(ActionExecutedContext ctx)
{
if (!(ctx.Result is ObjectResult objectResult)) return;
var serializer = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Include };
serializer.Converters.Add(new StringEnumConverter());
var formatter = new JsonOutputFormatter(serializer,
ctx.HttpContext.RequestServices.GetRequiredService<ArrayPool<char>>());
objectResult.Formatters.Add(formatter);
}
}
JsonOutputFormatter
поддерживается только до. net core 2.2, согласно официальной документации ; как мне продолжить, чтобы сохранить то же поведение под 3.1?