Я использую. net core 3.1, и я зарегистрировал несколько пользовательских преобразователей, используя
services.AddControllersWithViews().AddJsonOptions(x =>
{
x.JsonSerializerOptions.Converters.Add(new LocalDateConverter());
x.JsonSerializerOptions.Converters.Add(new InstantConverter());
x.JsonSerializerOptions.Converters.Add(new JsonStringEnumConverter());
});
, который отлично работает для вещей в теле запроса или ответа, но если я использую параметр запроса с [FromQuery]
эти преобразователи не называются. Я не нашел, как зарегистрировать конвертеры параметров запроса. Я предполагал, что они будут совместно использоваться, но я протестировал, и мои конвертеры определенно вызываются для тех же типов в теле json, но не в параметрах.
Моя конечная точка веб-контроллера выглядит как
[HttpGet]
public async Task<object> GetStuff([FromQuery] LocalDate? dateTest, [FromQuery] Instant? instantTest)