Joe*_*Joe 34 c# asp.net-mvc asp.net-mvc-4 entity-framework-6 azure-sql-database
我最近从实体框架5升级到实体框架6 Alpha 2,我收到以下错误:
找不到方法:'System.Data.Objects.ObjectContext System.Data.Entity.Infrastructure.IObjectContextAdapter.get_ObjectContext()'.
我打电话时会受到打击
if (Membership.ValidateUser(model.UserName, model.Password)) {}
Run Code Online (Sandbox Code Playgroud)
这曾经工作得很好,但不确定为什么会出现这个错误.有什么建议?
小智 31
EF 6没有System.Data.Objects.ObjectContext.EF 6已经移动了一些类型,包括ObjectContext,System.Data.Entity.dll进入EntityFramework.dll和更改了它们的命名空间.您收到此错误的事实表明您没有尝试重新编译您的应用程序,您只需更换EntityFramework.dll并希望获得最佳效果.那不行.您需要更新代码才能使用EF 6:您需要删除对引用的引用System.Data.Entity.dll,并更新代码以引用新类型.
对于IObjectContextAdapter.ObjectContext属性的引用可能在您正在使用的某个库中,但很可能它将在您自己的代码中.错误消息(在您未在问题中包含的部分)应该告诉您它的来源.
pir*_*ris 21
对我来说,更新以下工作:
using System.Data.Objects; --> using System.Data.Entity.Core.Objects;
using System.Data.Objects.DataClasses; --> using System.Data.Entity.Core.Objects.DataClasses;
Len*_*rri 14
我也在用EF 6.
我设法解决了卸载软件包Microsoft.AspNet.Providers.Corev.1.2 的问题.我正在使用1.1版.如果您像我一样正在使用LocaDb,则必须卸载该LocaDb软件包,因为它取决于该软件包.当然你需要重新安装LocaDb ......
您可以使用Visual Studio中的NuGet包管理器控制台获取v.1.1:
Install-Package Microsoft.AspNet.Providers.Core -Version 1.1
Run Code Online (Sandbox Code Playgroud)
有关此问题的Microsoft Connect错误已填写:
Microsoft.AspNet.Providers.Core与EF6不兼容
| 归档时间: |
|
| 查看次数: |
55243 次 |
| 最近记录: |