ModelState.IsValid имеет значение False, поскольку некоторые обязательные валидаторы полей скрыты - PullRequest
0 голосов
/ 01 июня 2018

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

Итак, проблема в том, что ModelState.IsValid имеет значение false из-за этих скрытых валидаторов.У меня не возникло проблем, я знаю ключи ModelState для этих скрытых валидаторов, так что я просто устраню ошибки и установлю ValidationState в Valid.Кажется, это не работает, так как ErrorCount не изменился, а ModelState.IsValid по-прежнему имеет значение false.Я использовал следующий код:

 modelState["ModelVM.MyKey"].Errors.Clear();
 modelState["ModelVM.MyKey"].ValidationState = ModelValidationState.Valid;

Нужно ли обновить ModelState?Или есть лучший, более чистый способ справиться со скрытыми обязательными полевыми валидаторами?Любая помощь будет принята с благодарностью.

Я использую ASP.NET Core 2.0.Спасибо.

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