首页 文章

实体框架代码第一次迁移

提问于
浏览
4

在运行以下命令

pm> Update-Database

得到以下错误

System.Reflection.TargetInvocationException:调用目标抛出了异常 . ---> System.TypeInitializationException:'System.Data.Entity.SqlServer.SqlProviderServices'的类型初始值设定项引发异常 . ---> System.TypeLoadException:程序'System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy'中的方法'ExecuteAsync'来自程序集'EntityFramework.SqlServer,Version = 6.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089'没有实现 .

5 回答

  • 1

    您的EF版本和项目版本不相等 . 您的实体框架是.Net 4的第6版,但您的项目使用.net 4.5项目.net版本4.5必须使用EF for .Net4.5

  • 3

    不是理想的解决方案,但我切换回Entity Framework 5.0.0,问题就消失了 . 发现这个有用link .

  • 1

    嗨我有类似的问题 . 很长一段时间后,我发现一个项目引用了Entity Framework版本6.1.1,另一个项目版本6.1.3引用了同一个解决方案 . 我从包管理器控制台中删除了6.1.3 . 问题终于解决了 .

    希望这会对某人有所帮助

  • 0

    我有同样的问题(EF 6.1.3和net462),我尝试了所有的答案,但没有解决问题 . 当我最终切换到发布配置时,它起了作用 .

    不知道Debug有什么问题,因为它们几乎是相同的,除了调试跟踪等 .

    希望这有助于将来的其他人 .

  • 1

    我有同样的问题 . 花了几个小时来解决这个问题 . 解决问题的原因是:我关闭了项目,创建了一个具有相同名称的新项目,将我创建的文件夹和类复制到新项目中,并通过nuget下载了我需要的软件包 . 然后添加迁移......之后一切顺利 .

相关问题