Как я могу контролировать сообщение об ошибке, возвращаемое, когда SerializerSettings.MissingMemberHandling имеет значение true, и в JSON существуют посторонние поля - PullRequest
0 голосов
/ 04 ноября 2019

Я пытаюсь обнаружить посторонние поля, отправленные в JSON POST, и вернуть значимую ошибку. Сейчас я просто получаю 400 без текста ошибки.

Я пытался вызвать JsonSerializationExceptions, а также HttpResponseExceptions, но я все еще получаю 400 без возвращаемого текста.

Вот код из Application_Start, где я настраивал процедуру MissingMemberHandling и обработку ошибок:

config.Formatters.JsonFormatter.SerializerSettings.MissingMemberHandling = Newtonsoft.Json.MissingMemberHandling.Error;config.Formatters.JsonFormatter.SerializerSettings.Error = OnError;}

private static void OnError (object sender, ErrorEventArgs args)
{
    args.ErrorContext.Handled = true;
    throw new Newtonsoft.Json.JsonSerializationException("test");
    //throw HttpExtensions.CreateBadRequestResponse(args.ErrorContext.Error.Message);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...