EF-Core Update-Database 命令失败(无法从 Microsoft.EntityFramework.Design 2.1.4.0 加载类型)
EF-Core Update-Database command fails (cannot load type from Microsoft.EntityFramework.Design 2.1.4.0)
我无法 运行 我的迁移 - 这很烦人,因为我无法继续我的项目...
我认为这一定是 ef 工具 的原因,因为一段时间前(一个月)这个项目中的迁移工作正常。
Add-Migration 命令成功运行,但随后的 Update-Database 失败并出现以下错误:
Applying migration '20181129154443_strlen'.
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
---> System.Runtime.Remoting.RemotingException:
Cannot load type
'Microsoft.EntityFrameworkCore.Design.IOperationResultHandler,
Microsoft.EntityFrameworkCore.Design, Version=2.1.4.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'.
一些可能相关的信息:
- 解决方案中的所有项目都依赖于相同的包(即。
Microsoft.EntityFrameworkCore.Design,版本=2.1.4.0 等)
- 包含 DbContext 的项目正在使用 包引用样式 而不是 packages.config(不要问我为什么)
- 启动项目正在使用经典 packages.config
- 解决方案中的所有项目都针对 .NET framework 4.7.2
- 整个解决方案构建并且 运行 很好(当我删除挂起的迁移时)
- Add-Migration 命令工作正常(生成迁移代码文件,发生任何类型的更改(无论我是更改列名还是添加索引都无所谓))
- 我安装了所有 .NET Core 工具(sdk,运行time)版本
有类似问题(未回答):
EF core migration failed: System.Runtime.Remoting.RemotingException: Cannot load type 'Microsoft.EntityFrameworkCore.Design.IOperationResultHandler
但是 none 的建议对我没有帮助。
我试过的:
- 重新启动 VisualStudio,清理 .vs
- 清除了所有 NugetCaches,删除了包文件夹
- 删除 bin/obj 个文件夹
- 重启电脑
- 已检查 NetCore sdk 版本和 运行时间版本
我的解决方案是将解决方案中的所有项目从 4.7.2 转换为 .NET Core 2.2。 (所有 NuGet(EFCore,EFCore.Design)也升级到 v2.2.2)。之后迁移开始工作。
我无法 运行 我的迁移 - 这很烦人,因为我无法继续我的项目...
我认为这一定是 ef 工具 的原因,因为一段时间前(一个月)这个项目中的迁移工作正常。
Add-Migration 命令成功运行,但随后的 Update-Database 失败并出现以下错误:
Applying migration '20181129154443_strlen'.
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
---> System.Runtime.Remoting.RemotingException:
Cannot load type
'Microsoft.EntityFrameworkCore.Design.IOperationResultHandler,
Microsoft.EntityFrameworkCore.Design, Version=2.1.4.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'.
一些可能相关的信息:
- 解决方案中的所有项目都依赖于相同的包(即。 Microsoft.EntityFrameworkCore.Design,版本=2.1.4.0 等)
- 包含 DbContext 的项目正在使用 包引用样式 而不是 packages.config(不要问我为什么)
- 启动项目正在使用经典 packages.config
- 解决方案中的所有项目都针对 .NET framework 4.7.2
- 整个解决方案构建并且 运行 很好(当我删除挂起的迁移时)
- Add-Migration 命令工作正常(生成迁移代码文件,发生任何类型的更改(无论我是更改列名还是添加索引都无所谓))
- 我安装了所有 .NET Core 工具(sdk,运行time)版本
有类似问题(未回答): EF core migration failed: System.Runtime.Remoting.RemotingException: Cannot load type 'Microsoft.EntityFrameworkCore.Design.IOperationResultHandler 但是 none 的建议对我没有帮助。
我试过的:
- 重新启动 VisualStudio,清理 .vs
- 清除了所有 NugetCaches,删除了包文件夹
- 删除 bin/obj 个文件夹
- 重启电脑
- 已检查 NetCore sdk 版本和 运行时间版本
我的解决方案是将解决方案中的所有项目从 4.7.2 转换为 .NET Core 2.2。 (所有 NuGet(EFCore,EFCore.Design)也升级到 v2.2.2)。之后迁移开始工作。