Я использую следующую модель для управления вводом пользователя и регистрации его. Но если я вводим одни и те же пароли и нажимаю кнопку , появляется сообщение об этом подтверждении пароля.Проблема с подтверждением пароля в MVC3
Я уверен, что модель правильная, потому что она работает на другой странице. В этом случае RegisterModelSecond является членом EventFrontEndViewModel.
Так что, когда я комментирую [Compare("RegisterModel.Password", ErrorMessage = "The password and confirmation password do not match.")]
, это работает, но никаких подтверждений мне не нужно!
Любой ключ, как его исправить?
public class EventFrontEndViewModel
{
public Page CurrentPage { set; get; }
public List<Event> Events { set; get; }
public List<Event> SubscribedEvents { set; get; }
public RegisterModelSecond RegisterModel { set; get; }
public EventFrontEndViewModel()
{
CurrentPage = new Page();
Events = new List<Event>();
RegisterModel = new RegisterModelSecond();
SubscribedEvents = new List<Event>();
}
}
Регистрация Модель
public class RegisterModelSecond
{
[Required]
[Display(Name = "User name")]
public string UserName { get; set; }
[Required]
[DataType(DataType.EmailAddress)]
[Display(Name = "Email address")]
public string Email { get; set; }
[Required]
[StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)]
[DataType(DataType.Password)]
[Display(Name = "Password")]
public string Password { get; set; }
[Required]
[DataType(DataType.Password)]
[StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)]
[Display(Name = "Confirm password")]
[Compare("Password", ErrorMessage = "The password and confirmation password do not match.")]
public string ConfirmPassword { get; set; }
}
и HTML
<div class="editor-label">
@Html.LabelFor(m => m.RegisterModel.Password)
</div>
<div class="editor-field">
@Html.PasswordFor(m => m.RegisterModel.Password)
@Html.ValidationMessageFor(m => m.RegisterModel.Password)
</div>
<div class="clear">
</div>
<div class="editor-label">
@Html.LabelFor(m => m.RegisterModel.ConfirmPassword)
</div>
<div class="editor-field">
@Html.PasswordFor(m => m.RegisterModel.ConfirmPassword)
@Html.ValidationMessageFor(m => m.RegisterModel.ConfirmPassword)
</div>
<div class="clear">
</div>
Спасибо, человек ... совершенно сумасшедшая ошибка ... – kape123
Ух ты .. ты спаси мой день .. Спасибо –