1
我有兩個型號,即登錄和註冊:在模型中使用相同命名屬性時不顯示驗證消息?
登錄型號
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)字段屬性。
我可以實現我對電子郵件字段使用不同名稱的願望行爲,但有沒有這樣做的方式?
除此之外,我可以從Register模型繼承並將其用於登錄目的,同時這麼做會是我上述場景的輸出嗎?