如果通过功能检查存在电子邮件我想要显示错误
我是怎么做到的?
[RequiredIf(BL.datafuncs.checkIfExist(email) == true, ErrorMessage = "email already exist")]
public string email { get; set; }
答案 0 :(得分:2)
RequiredIf
属性用于根据另一个属性的值验证所需的属性。例如,如果您的模型包含属性bool NotifyMeByEmail
和string EmailAddess
,那么您可以按如下方式应用它。
public bool NotifyMeByEmail { get; set; }
[RequiredIf("NotifyMeByEmail", ErrorMessage = "Please enter you email address")]
public string EmailAddress { get; set; }
然后在视图中,如果未选中NotifyMeByEmail
的复选框,则会为EmailAddress
生成验证错误。
看起来您确实想要验证用户输入的电子邮件在数据库中是否已存在,在这种情况下,您需要[Remote]
属性(标准MVC,而非万无一失)。 How to: Implement Remote Validation in ASP.NET MVC
答案 1 :(得分:0)
自定义属性嵌入在程序集中,它们不是运行时的东西,所以你永远不能在属性参数中放置一个函数。我建议您在控制器呼叫中进行检查并相应地执行一些操作