首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RequireUniqueEmail = false不工作MVC 5

RequireUniqueEmail = false不工作MVC 5
EN

Stack Overflow用户
提问于 2015-01-14 00:15:35
回答 2查看 649关注 0票数 2

我正在开发一个MVC5解决方案,我可以在其中管理“组织”,用户可以在它们下注册。我实现了帐户控制器,以便从注册表单获取组织ID,并将其保存在AspNetUsers表中。现在我知道了哪个用户属于哪个组织。

但现在我遇到了一个问题,每次我尝试使用注册到另一个组织的相同电子邮件注册用户时,我都会收到这样的消息:"Name t@t.com已被占用。“

你知道如何让ASP.NET会员允许重复发送电子邮件吗?

我尝试在我的Account Controller中使用以下代码,但它对我无效:

代码语言:javascript
复制
UserManager.UserValidator = new UserValidator<ApplicationUser>(UserManager)
{
    RequireUniqueEmail = false
};
var result = await UserManager.CreateAsync(user, model.Password);

有什么想法吗?有没有更好的方法呢?

EN

回答 2

Stack Overflow用户

发布于 2015-01-14 00:53:57

您应该在提供商中禁用RequiresUniqueEmail (通过web.config settings),就像可以启用/禁用许多选项一样

代码语言:javascript
复制
<membership defaultProvider="MySqlMembershipProvider">
  <providers>
    <clear />
    <add connectionStringName="SimpleConnection" applicationName="abc" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" passwordFormat="Hashed" maxInvalidPasswordAttempts="15" minRequiredPasswordLength="7" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" passwordStrengthRegularExpression="" name="MySqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
  </providers>
</membership>
票数 0
EN

Stack Overflow用户

发布于 2015-01-14 00:54:37

问题可能是您使用电子邮件作为用户名,而不是有一个单独的用户名字段。因此,Name t@t.com is already taken -它将t@t.com视为用户名。创建唯一的UserName。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27926574

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档