【问题标题】:.net mvc email as username returning error - InvalidProviderUserKey.net mvc 电子邮件作为用户名返回错误 - InvalidProviderUserKey
【发布时间】:2011-08-27 06:25:48
【问题描述】:

我有一个 .Net MVC 应用程序,我正在尝试使用电子邮件地址作为用户名。我从this article 实现了逻辑,其中用户名被屏蔽为电子邮件。但是,当我尝试打电话时

private readonly MembershipProvider _provider;
MembershipCreateStatus status;
_provider.CreateUser(userName, password, email, null, null, true, false, out status);

如果用户名是“email@email.com”,则状态始终返回为InvalidProviderUserKey。如果我使用标准用户名(没有@),它工作正常。我尝试寻找解决方案,但我真的可以在任何地方找到 InvalidProviderUserKey 的解释。

我想知道是否有人以前遇到过这个问题,或者可能能够解释为什么这个场景会返回这个特定状态。提前感谢您的帮助。

更新

我为 ProviderUserKey 使用了 Guid.NewGuid,它起作用了。

_provider.CreateUser(userName, password, email,null, null, true, Guid.NewGuid(), out status);

感谢 Daniel A. White 的帮助。您提供的文章链接是我需要理解的。

【问题讨论】:

  • 您的会员提供商是什么?
  • 它是默认的会员提供者,公共抽象类 MembershipProvider : ProviderBase

标签: .net asp.net-mvc model-view-controller createuser


【解决方案1】:

确保您将某些内容传递给providerUserKey,而不仅仅是false

providerUserKey 类型:System.Object 来自的唯一标识符 用户的会员数据源。

http://msdn.microsoft.com/en-us/library/system.web.security.membershipprovider.createuser.aspx

【讨论】:

    猜你喜欢
    • 2015-04-27
    • 1970-01-01
    • 2012-02-06
    • 2011-09-15
    • 2021-06-02
    • 2020-11-14
    • 1970-01-01
    • 2011-04-02
    • 2012-12-09
    相关资源
    最近更新 更多