Поймать ошибки сериализации json.net - PullRequest
0 голосов
/ 06 февраля 2019

Я работаю над веб-интерфейсом API с использованием dotnet core 2.2, и мы хотим отловить исключение сериализации и вернуть 400 badRequest, чтобы отличить ошибки проверки 422UnprocessableEntity.Мы попытались создать обработчик исключений

public void JsonSerializerExceptionHandler(object sender, Newtonsoft.Json.Serialization.ErrorEventArgs args)
    {
        args.ErrorContext.Handled = true;
        var errorContext = args.ErrorContext;
        if (errorContext == null)
        {
            return;
        }

        var error = errorContext.Error;
        throw new SerializationException(error.Message, error.InnerException);
    }

, но когда он его выбрасывает, выдается другое исключение типа InvalidOperationException с сообщением

Текущая ошибка контекста ошибки отличается от запрошенной ошибки.

Мы попробовали другой подход, но не можем найти решение.Может кто-нибудь помочь?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...