Я пытаюсь создать простую страницу создания, содержащую сведения о пользователях и поле подтверждения пароля.ModelState.IsValid является ложным после подтверждения Jquery Validation
У меня есть модель представления пользователя и класс пользователя:
public class UserViewModel
{
public User AccountUser { get; set; }
[Required]
[Compare("AccountUser.Password")]
public string ConfirmPassword { get; set; }
}
[DisplayName("User Account")]
public class User
{
[Required]
[DisplayName("Username")]
public string Username { get; set; }
[Required]
[DisplayName("Password")]
public string Password { get; set; }
}
При вводе в несогласованных данных в два поля пароля, то JQuery будет успешно сказать мне, что поле пароля не совпадают и кнопку отправки не будет возвращаться к моему контроллеру.
Однако, если я совпадаю с двумя полями, jQuery проведет проверку и запрос отправки вернется к контроллеру. В этот момент мой ModelState.IsValid
проверяется и возвращает false, ссылаясь на «Не удалось найти свойство AccountUser.Password» на ошибках для свойства Password.
Я понимаю разделение шаблона проблем, однако я пытаюсь понять, почему этот код не работает.
Может кто-нибудь объяснить, почему modelstate возвращает false после того, как не будут отображаться сообщения проверки jquery?
Я вижу объект полностью заселен, как только он получает обратно к контроллеру, со всеми значениями в правильных местах. – Jastill