0

我正在尝试在 4.0 MVC4 网站上设置简单会员资格。我在本地机器上使用 SQLexpress 实例进行开发。

当我第一次点击 [Authorize] 操作时,我的默认连接字符串可以编写表格。并且登录操作似乎命中数据库并返回不正确的用户名或密码错误。由于数据库中没有任何内容,因此所有条目都是不正确的。

我认为问题在于提供者。我用来编写第一个凭据的 ASP.NET 配置工具告诉我默认提供程序是 AspNetSqlProvider。我尝试在 Web 配置文件中设置 Membership 部分,清除该默认值并将 sqlmembershipprovider 设为默认值。这会导致各种各样的错误,配置工具告诉我它无法连接到提供程序,并且调试器在 InitializeSimpleMembershipAttributes 上停止确保已初始化过滤器,从而阻止了第二次创建表。

我将非常感谢您的建议。

4

1 回答 1

1

ASP.Net 配置工具用于完整的 ASP.Net 成员服务,而不是简单成员表。如果您想将用户添加到 Simple Membership,您只需使用 SQL Management Studio 直接在表中添加用户。如果您为更复杂的 ASP.Net Membership 服务修改提供程序,您将使 Simple Membership 变得无用。

来自ASP.Net 博客

WSAT 是为与 ASP.NET Membership 一起工作而构建的,并且与 Simple Membership 不兼容。那里有两个主要选项:

  1. 使用 WebSecurity 和 OAuthWebSecurity API 来管理用户和角色。
  2. 使用上述 API 创建 Web 管理员。

由于 SimpleMembership 在您的数据库之上运行,您可以像更新任何其他数据一样更新您的用户 - 通过 EF 甚至直接数据库编辑(当然在开发中)

于 2013-09-08T14:33:17.130 回答