繁体   English   中英

System.IO.FileLoadException:'无法加载文件或程序集'EntityFramework或其依赖项之一。 访问被拒绝。

[英]System.IO.FileLoadException: 'Could not load file or assembly 'EntityFramework or one of its dependencies. Access is denied.'

System.IO.FileLoadException HResult = 0x80070005消息=无法加载文件或程序集“ EntityFramework,版本= 6.0.0.0,区域性=中性,PublicKeyToken = b77a5c561934e089”或其依赖项之一。 访问被拒绝。

我了解这是一个常见问题,但是我的情况有所不同。 我降级了我的程序正在使用的.net版本,并对其进行了清理和重建。 现在,当我尝试启动程序时,我立即收到该错误消息。

我尝试了以下方法:

  • 重建和清洗的解决方案
  • 删除bin文件夹并重建
  • 删除实体框架参考,然后再次添加
  • 设置所有用户的权限,以完全控制所有文件夹和子文件夹
  • 跑了SysInternals Process Monitor,在任何地方都没有看到“访问被拒绝”状态
  • 试图降级实体框架版本
  • 创建了一个全新的项目并将文件复制过来,仍然收到相同的错误消息
  • 重新启动Visual Studio
  • Ran Visual Studio作为管理员
  • 回到我的程序使用的原始.net版本
  • 删除并重新安装了nuget软件包

我从这里去哪里? 我在此网站上看到的任何帖子都无法解决此问题。

更新:这是使用相同版本的实体框架的程序的屏幕截图,并且目前正在运行,下面是该程序的屏幕快照,我无法使其正常工作。 您可以在工作版本中看到不同的图标,因此我唯一的猜测是它是相关的,但我不知道蓝色符号的含义。 有什么猜想吗?

工作程序

程序不起作用

如果是网络应用

  1. 如果您不使用IISExpress,则以CMD作为管理员并运行IISReset命令
  2. 您应该清除.net缓存以手动删除Windows https://stackoverflow.com/a/17651986/1979151上Microsoft.Net文件夹上的temp文件夹
  3. 将平台目标从64更改为32到AnyCPU
  4. 尝试在应用程序池高级设置上启用32位应用程序
  5. 抱歉,重新启动机器

希望对您有帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM