0

我正在尝试详细了解 SimpleMembershipProvider。到目前为止,我已经在 VWD-2012 中使用空的 Asp.Net MVC - 4 模板创建了一个新项目。

我一直在关注这个很棒的教程。我能够将本教程中的所有类复制并粘贴到我的项目中。然后,我在 global.asax Application_Start 方法中使用以下代码行来初始化 SimpleMembershipProcider :

WebSecurity.InitializeDatabaseConnection("dbcontext", "UserProfile", "Id", "Name", true);

(我在我的 userprofile 表中使用 Id 和 Name 作为列名)

之后,我在我的项目中启用了迁移,创建了初始迁移,然后创建了更新数据库。然后我在 Visual Studio 中检查我的数据库,并形成了所有与 SimipleMembership 相关的类。

然后我创建了一个用户并成功登录。到目前为止一切正常。然后,我在我的网站上添加了 Facebook 作为身份提供者。在这个过程当代码行

OAuthWebSecurity.CreateOrUpdateAccount(provider, providerUserId, model.UserName);

尝试在 pages_OAuthMembership 表中创建一个条目。但是引发了以下异常:

INSERT 语句与 FOREIGN KEY 约束“FK_dbo.webpages_OAuthMembership_dbo.webpages_Membership_UserId”冲突。冲突发生在数据库“dbcontext”、表“dbo.webpages_Membership”、列“UserId”中。该语句已终止。

有人可以帮我解决这个问题吗?

4

0 回答 0