无法加载文件或程序集HRESULT:0x80131515(将控制器添加到在网络驱动器上具有程序集引用的MVC项目时)

问题描述 投票:70回答:10

我已经看到了这个:VSTS 2010 SGEN : error : Could not load file or assembly (Exception from HRESULT: 0x80131515)并没有任何答案奏效。当我构建或任何东西时它也不会出现。我可以运行该项目,当我尝试添加一个实体框架模板控制器时会发生这种情况:

然后我收到这个错误:

所有项目文件都在我的网络共享上,因为这是我的文档所在的工作所在。这是我尝试过的:

1)将项目设置中的发电机序列化装配转为开,关和自动。

2)使用以下代码将sgen.exe.config添加到C:\ Program Files \ Microsoft SDKs \ Windows \ v7.0A \ bin \ NETFX 4.0工具:

<configuration>
 <runtime>
   <loadFromRemoteSources enabled="true" />
 </runtime>
</configuration>

3)尝试取消阻止程序集,但我在属性选项卡中没有取消阻止选项。

这些解决方案都不起作用。有谁知道如何解决这个问题???对于来自nuget或我自己的项目的任何自定义程序集,由于它们在网络空间中的位置而发生此错误,但仅在尝试添加EF模板控制器时发生。我可以构建并运行程序。

asp.net-mvc visual-studio-2010 assemblies .net-assembly
10个回答
82
投票

尝试将<loadFromRemoteSources enabled="true" />添加到C:\[Visual Studio 2010 Install Dir]\Common7\IDE\devenv.exe.config正下方的<runtime>,看看是否有帮助:)


0
投票

这里的其他答案帮助我在PowerShell中找出了这个问题。运行Unblock-File <filename>以允许正在执行的脚本访问它。


117
投票

我只需要在Windows资源管理器中单击“文件属性”对话框中的“取消阻止”。


10
投票

作为一个额外的解决方案,我们最近遇到了这样的问题。解决方案结果是解锁文件,但扭曲。我们以zip文件将文件复制到服务器。当我们从zip存档中提取文件时,它们已被阻止。我们无法取消阻止文件。我们将单击取消阻止按钮,然后单击确定,当我们查看属性时,它们仍然被阻止。

我们要做的是删除所有被阻止的文件,取消阻止源zip文件,然后提取文件。此时,以前被阻止的文件被解锁,应用程序运行正常。希望能帮助别人避免一些挫败感。

编辑:我相信您还必须以管理员身份运行Windows资源管理器才能解锁文件。


9
投票

此问题来自以下事实:某些必需文件位于“不受信任的位置”,例如网络或共享位置(即使在同一台计算机上)。如果位置在同一台计算机上,则可以使用subst命令行选项。


8
投票

我在其他论坛上看到过这个问题,这里是有人发布的解决方案:在项目的属性中包含无法加载的DLL程序集,转到Build设置,并在底部显示“生成序列化” assembly:“,默认为Auto。将其设置为关闭。您的解决方案应该构建好。

当我在具有多个项目的webform解决方案中使用API​​时,这发生在我身上。它在单项目解决方案MVC上运行良好。


8
投票

这些解决方案对我也不起作用。

就我而言,我正在访问映射网络驱动器上的文件。我的解决方案是通过执行以下操作将我的网络IP地址添加为可信驱动器:

  1. 控制面板
  2. 网络和共享中心
  3. Internet选项(窗口左下角)
  4. 安全选项卡
  5. 选择“本地Intranet”
  6. 单击“站点”按钮
  7. 单击“高级”按钮
  8. 将网络驱动器的IP添加到区域。

不知道是什么让这项工作超过了所有其他选项,但这就​​是为我解决问题的原因。现在所有项目和解决方案都没有问题。


2
投票

这些解决方案都不适合我。相反,我通过sgen.exe.config制作https://stackoverflow.com/a/3407750/516512找到了方法


2
投票
  1. 我只需要在文件属性对话框中单击“取消阻止”。
  2. 请检查您的文件是否只读,然后取消选中并执行第一步(在此之前浪费更多时间:))

0
投票

尝试解锁文件desbloquer

这解决了我的问题。

© www.soinside.com 2019 - 2024. All rights reserved.