MVC4:外部(OAuth)认证&映射到其他表/实体

时间:2012-10-01 07:21:23

标签: asp.net-mvc oauth asp.net-mvc-4

我正在构建一个MVC4应用程序,需要使用外部身份验证(Facebook等)。我工作得很好。我看到SimpleMembershipProvider创建了两个单独的表来处理这个:“ webpages_Membership ”和“ webpages_OAuthMembership ”。我需要将其他表(外键)映射到用户ID。问题是两个表都有一个彼此无关的用户ID。如果需要,我可以忽略数据库中的外键(虽然不喜欢),但更大的问题是:在代码中,我该如何确定用户是在外部还是在本地获得授权,以便我知道从哪里获取其他信息?具体来说,我有一个用户配置文件表,我将其他属性映射到..有2种不同类型的用户,如何去做?

1 个答案:

答案 0 :(得分:0)

是的,我已经了解了更多关于MVC4和SimpleMembershipProvider的知识,我现在看到两个表上的用户ID实际上是一个名为UserProfile的父表的外键。因此,用户ID仍然是唯一的...它只是映射与我习惯使用标准ASP.NET成员资格提供程序的情况略有不同。电子邮件地址和所需的任何其他属性都可以轻松应用于UserProfile表。