我在使用data-anotation的远程属性时遇到问题。
我正在为存储数据的用户建立模型:
[DataType(DataType.EmailAddress,ErrorMessage="please enter valid email")]
[DisplayName("Email Address")]
[Required(ErrorMessage = "Email is Required")]
[Remote("CheckUniqueEmail","User",ErrorMessage="An account with this email address already exists.")]
public string Email { get; set; }
我正在创建新的用户电子邮件时查看该用户的电子邮件...
当我尝试使用不同控制器中的电子邮件和密码登录时,它仍会调用Remote并检查唯一的电子邮件...
我想我必须在Login控制器中排除电子邮件和密码属性 - 但我不知道如何。
答案 0 :(得分:2)
您需要使用2种不同的视图模型,一种用于创建帐户,另一种用于登录。
答案 1 :(得分:1)
您应该使用另一个模型登录LoginController。
这些验证将在您使用此模型的任何地方使用。
答案 2 :(得分:1)
您还可以使用MetadataType
重用相同的基本模型并应用不同的验证。示例Here。