在新网站上,我允许人们使用本地帐户注册(即,他们在我的网站上填写一份表格,列出他们的信息,或者他们可以使用Facebook/Twitter等登录。当他们使用Facebook或Twitter登录时,会在ASPNetUserLogins表中添加一条记录-表中的列为
UserID
LoginProvider
ProviderKey
UserID对应于ASPNetUsers表中的ID,登录提供商只需说"Twitter"或"Facebook",ProviderKey是Facebook或Twitter ID号。当使用Facebook MVC模板时,UserID是Facebook ID,这是提供商密钥。
我的问题-如何使用提供程序密钥查询ASPNetUserLogins表
我希望能够从ASPNetUserLogin表中获取UserID,并且我有ProviderKey,因此可以拥有唯一的密钥,但在新的身份系统中似乎无法访问ASPNetUsers表。
您想要调用:
public virtual Task<TUser> FindAsync(UserLoginInfo login)
并使用providerKey和loginProvider构造UserLoginInfo。