У меня есть две модели, то есть Войти и зарегистрироваться:
Логин Модель
public class LoginModel
{
[Required(ErrorMessage = "Email is required")]
[RegularExpression("^[a-z0-9_\\+-]+(\\.[a-z0-9_\\+-]+)*@[a-z0-9-]+(\\.[a-z0-9-]+)*\\.([a-z]{2,4})$", ErrorMessage = "Not a valid email")]
[DataType(DataType.EmailAddress)]
[DisplayName("Email")]
[StringLength(150, ErrorMessage = "Must be less than 150 characters")]
public string Email { get; set; }
[Required(ErrorMessage = "Password is required")]
[DataType(DataType.Password)]
[DisplayName("Password")]
[StringLength(30, ErrorMessage = "Must be less than 30 characters")]
public string LoginPassword { get; set; }
[DisplayName("Remember me")]
public bool Remember { get; set; }
}
Регистрация модели:
public class RegisterModel
{
[Required(ErrorMessage = "Email is required")]
[RegularExpression("^[a-z0-9_\\+-]+(\\.[a-z0-9_\\+-]+)*@[a-z0-9-]+(\\.[a-z0-9-]+)*\\.([a-z]{2,4})$", ErrorMessage = "Not a valid email")]
[DataType(DataType.EmailAddress)]
[DisplayName("Email")]
[StringLength(150, ErrorMessage = "Must be less than 150 characters")]
public string Email { get; set; }
[Required(ErrorMessage = "Full Name is required")]
[DisplayName("Full Name")]
[StringLength(50, ErrorMessage = "Must be less than 50 characters")]
public string FullName { get; set; }
[Required(ErrorMessage = "Password is required")]
[DataType(DataType.Password)]
[DisplayName("Password")]
[StringLength(30, ErrorMessage = "Must be less than 30 characters")]
public string RegisterPassword { get; set; }
[Required(ErrorMessage = "Confirm Password is required")]
[DataType(DataType.Password)]
[DisplayName("Confirm Password")]
[StringLength(30, ErrorMessage = "Must be less than 30 characters")]
public string ConfirmPassword { get; set; }
[Required(ErrorMessage = "Please read and agree the terms and condition.")]
[DisplayName("I agree to the terms and conditions")]
public bool AgreeTerms { get; set; }
}
И они оба вызываются на домашней странице с помощью отдельных модальных всплывающих окон -> так скажем, если пользователь регистрируется сам (и при регистрации он нажимает ввод без ввода адреса электронной почты и отображается сообщение проверки). После успешной регистрации пользователь пытается войти в систему (и он снова нажимает клавишу ввода, не вводя электронную почту), но на этот раз сообщение проверки не отображается.
Насколько мне известно, причина не показывать сводку проверки состоит в том, что сообщение проверки появляется в модальном регистре, который в данный момент не виден, и потому что обе модели используют атрибут поля email (названный: Email) .
Я могу достичь желаемого поведения, используя другое имя для поля электронной почты, но есть ли способ без этого ???
И в дополнение к этому я могу наследовать от модели Register и использовать ее также для целей входа в систему, делая при этом, что будет результатом моего вышеописанного сценария?