启用 – 迁移时出错

我是EF的新手,当我尝试在PMC控制台中运行Enable-Migrations时出现错误:使用“1”参数调用“LoadFrom”的exception:

"Could not load file or assembly 'file:///...\pa ckages\EntityFramework.6.0.1\tools\EntityFramework.PowerShell.Utility.dll' or one of its dependencies. Operation is not supported. (Exception from HRESULT: 0x80131515)" At ...\packages\EntityFramework.6.1.1\tools\EntityFramework.psm1:780 char:62 + $utilityAssembly = [System.Reflection.Assembly]::LoadFrom <<<< ((Join-Path $ToolsPath EntityFramework.PowerShell.Utility.dll)) + CategoryInfo : NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId : DotNetMethodException You cannot call a method on a null-valued expression. At ...\packages\EntityFramework.6.1.1\tools\EntityFramework.psm1:781 char:50 + $dispatcher = $utilityAssembly.CreateInstance <<<< ( + CategoryInfo : InvalidOperation: (CreateInstance:String) [], RuntimeException + FullyQualifiedErrorId : InvokeMethodOnNull Exception calling "CreateInstanceFrom" with "8" argument(s): "Could not load file or assembly 'file:///...\packages\EntityFramework.6.0.1\tools\EntityFramework.PowerShell.dll' or one of its dependencies. Operation is no t supported. (Exception from HRESULT: 0x80131515)" At ...\packages\EntityFramework.6.1.1\tools\EntityFramework.psm1:809 char:31 + $domain.CreateInstanceFrom <<<< ( + CategoryInfo : NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId : DotNetMethodException 

我刚刚在同事的机器上碰到了这个。 解决方案是:

  1. 卸载EF NuGet包
  2. 从Web.Config / App.Config文件中手动删除entity framework部分
  3. 关闭Visual Studio
  4. 在Visual Studio中重新打开解决方案
  5. 重新安装EF NuGet包

所以打开文件资源管理器中的解决方案文件夹,你能找到他们在“Packages”文件夹中找到的.dll然后是EntityFramework 6.0.1文件夹吗? 如果没有,有两种选择:

  1. 检查源控制服务器,有可能它没有下载到本地工作区。 如果是这样,如果您使用TFS,只需从源代码管理器手动获取它们。
  2. 如果文件不在源控制服务器上,我建议卸载EF 6.0.1 nuget,然后在上面的Package文件夹中手动删除关于ef的整个文件夹,然后重新安装。

我有同样的问题。 我的项目存储在网络驱动器中。 我的电脑上有许多安全策略。 我将项目移动到本地硬盘驱动器,问题解决了。

似乎“EntityFramework.Powershell.utility.dll”正在使用一些powershellfunction,并且系统阻止执行此类调用,可能是因为调用powershell的dll不是本地文件。

在您的情况下,请确保您没有任何安全策略或系统配置,以防止您的系统从非本地驱动器执行有问题的扩展(EntityFramework.Powershell.utility.dll)

面临类似的问题。 问题的原因是我的代码从一台机器转移到另一台机器……删除然后重新安装entity framework解决了这个问题。

从Package Manager控制台或浏览器更新实体包。