MVC3是有效的电子邮件

时间:2011-12-13 12:02:26

标签: asp.net-mvc-3 frameworks email-validation

是否有内置功能可以测试电子邮件地址是否有效?

我想在向最终用户发送确认电子邮件之前测试电子邮件地址结构是否有效。

我理解我可以通过使用正则表达式来创建我自己的函数,但如果有内置函数,我宁愿使用它。

2 个答案:

答案 0 :(得分:4)

我相信你可以使用Data Annotations扩展来完成这项工作。在这里查看Scott Guthrie的博客文章:http://weblogs.asp.net/srkirkland/archive/2011/02/23/introducing-data-annotations-extensions.aspx

Scott的帖子中有一个很好的观点,为什么你会使用这个而不是MVC 3期货验证器,这可能与你的选择有关:

  

ASP.NET MVC 3期货定义了该项目所具有的四个新数据注释属性:CreditCard,Email,Url和EqualTo。不幸的是,引用MVC 3期货需要在模型层中依赖MVC 3,这在多层项目中可能是不可取的。数据注释扩展使服务器和客户端库保持独立,因此使用项目的验证属性不需要您在模型层中采用任何其他依赖项,如果您使用MVC 3,仍然允许丰富的客户端验证体验。

答案 1 :(得分:2)

是的,您可以使用

public class CustomerMetaData
{
    // Add type information.
    [DataType(DataType.EmailAddress)]
    public object EmailAddress;
}

在您的模型上。详细了解here

然而,上次我检查它并不适用于客户端。

我用Google搜索,从imran baloch's blog post开始,它似乎现在可以正常工作。