启用MVC中的迁移会抛出文件未找到错误

本文关键字:文件 错误 MVC 迁移 启用 | 更新日期: 2023-09-27 18:08:57

我是使用MVC的新手,当我在Visual Studio 2013中完成关于迁移的教程时,我似乎已经打破了在包管理器控制台上与EntityFramework的联系。

我相信这是在我将EntityFramework更新到6.1.3版本时开始的,但这似乎与MVC控制器脚手架不兼容。所以我把它回滚到5.0.0版本。

当我现在输入命令enable-migrations

我得到以下错误:

异常调用"CreateInstanceFrom"与"8"参数(s): "Could not load file or assembly, Culture=neutral, PublicKeyToken=b77a5c561934e089'或其依赖项之一。系统找不到指定的文件。"在D: ' CAP_MVC_Dev_2 ' CAP_MVC ' '不锈钢'帽包' EntityFramework.5.0.0 ' ' EntityFramework工具。psm1:431 char: 31+ $域。CreateInstanceFrom & lt; & lt; & lt; & lt;(+ CategoryInfo: NotSpecified:(:) [], MethodInvocationException+ fulllyqualifiederrid: DotNetMethodTargetInvocation

文件EntityFramework.psm1存在于上面描述的位置,但是错误似乎在该文件中?$domain.CreateInstanceFrom是如何失踪的,从哪里来的?卸载和重新安装EntityFramework包没有区别。

我试着从头开始创建新项目,但是这个错误仍然存在。卸载/重新安装Visual Studio 2013也没有解决问题,也没有破坏连接的数据库并以空数据库重新开始。

启用MVC中的迁移会抛出文件未找到错误

结果是,解决方案与这个类似

实体框架代码首次迁移抛出错误

当我第一次尝试这个解决方案时,有报告说gaacil没有被识别。由于我的工作环境,它不容易添加gacutil被普遍认可(我相信),所以我在文件系统中找到了gacutil.exe,将其复制到链接帖子中引用的lib'net45文件夹,然后运行命令

gacutil /i EntityFramework.dll

这已经解决了问题,我不再收到'File not Found error'

我没有使用GAC安装,而是采用了以下解决方案(VS2013 SP5 + EF 5):

copy (Solution dir)'packages'EntityFramework.5.0.0(整个目录)

C:'Program Files (x86)'Microsoft Visual Studio 12.0'Common7'IDE'CommonExtensions'Microsoft'EFTools'NuGet Packages'

NuGet Packages目录不存在,所以需要手动创建。