使用Microsoft.AspNet.Membership.OpenAuth获取错误

时间:2013-11-22 14:19:55

标签: asp.net entity-framework oauth-2.0 dotnetopenauth

我使用Visual Studio模板中的RegisterExternalLogin控件收到错误。从Twitter选择登录后,Twitter似乎处理登录确定,然后尝试加载响应页面,然后发生错误。

从Microsoft.Aspnet.Membership.OpenAuth dll调用登录方法后,该错误似乎与EntityFrameworks有关,但这就是我所知道的。

有人知道如何解决这个问题吗?

以下是错误消息:

  

[MissingMethodException:找不到方法:   “System.Data.Objects.ObjectContext   System.Data.Entity.Infrastructure.IObjectContextAdapter.get_ObjectContext()”。]   Microsoft.AspNet.Membership.OpenAuth.EFOpenAuthMembershipDatabase.EnsureDatabaseCreated(的DbContext   db)+0
  Microsoft.AspNet.Membership.OpenAuth.EFOpenAuthMembershipDatabase.GetMembershipUserName(字符串   providerName,String providerUserId,Boolean updateLastUsed)+221
  Microsoft.AspNet.Membership.OpenAuth.OpenAuthManager.Login(HttpContextBase   context,String providerName,String providerUserId,Boolean   createPersistentCookie)+128
  Microsoft.AspNet.Membership.OpenAuth.OpenAuth.Login(字符串   providerName,String providerUserId,Boolean createPersistentCookie)   +198 FinModelControls.Account.RegisterExternalLogin.ProcessProviderResult()   594

1 个答案:

答案 0 :(得分:0)

有类似的异常,提交了一个Conect错误。 https://connect.microsoft.com/VisualStudio/feedback/details/811035/microsoft-aspnet-membership-openauth-is-not-compatible-with-entity-framework-6

解决方案:确保您使用的是最新的v 2.0.0 Microsoft.AspNet.Membership.OpenAuth包,而不是1.0.1。