2011-02-23 113 views
0

我在我的应用程序中使用内置身份验证,并设置了它,以便管理员角色可以创建新帐户,分配用户名和电子邮件。我编辑了AccountModel的RegisterModel内部类来添加正则表达式,以确保电子邮件是有效的电子邮件,并且一切正常。电子邮件编辑防止重复

但是,当涉及到编辑现有的用户电子邮件时,我遇到了麻烦。如何验证新电子邮件是否为有效电子邮件?那另一个用户还没有这个电子邮件?我知道如何去做正则表达式,但它到底在哪里?而且我可以添加一个远程调用来检查重复项,但我又在哪里放这些东西?在控制器中检查重复项似乎是错误的。

感谢您的时间,

周杰伦

回答

0

试试这个:

<membership> 
     <providers> 
     <clear/> 
     <add name="AspNetSqlMembershipProvider" 
      type="System.Web.Security.SqlMembershipProvider" 
      ... 
      requiresUniqueEmail="true" 
      ... /> 
     </providers> 
    </membership> 
+0

是的,我有一个和它在帐户创建自己的工作。问题是,当一个现有的账户被编辑时,它不会起作用。所以可以输入任何内容:一个非唯一的电子邮件,甚至一个非电子邮件。目前我正在检查电子邮件在我的控制器的编辑操作中是唯一的,但需要通过模型来处理此问题。编辑视图键入到MembershipUser。 – Jay 2011-02-23 16:15:46

+0

@Jay也许这篇文章可以帮助你:http://www.4guysfromrolla.com/articles/022311-1.aspx – frennky 2011-02-23 21:52:51