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

时间:2011-12-15 17:48:24

标签: asp.net-mvc visual-studio-2010 assemblies .net-assembly

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

controller settings

然后我收到此错误:

error message

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

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)尝试取消阻止程序集,但我在属性选项卡中没有取消阻止选项。 no unblock option

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

9 个答案:

答案 0 :(得分:119)

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

答案 1 :(得分:82)

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

答案 2 :(得分:10)

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

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

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

答案 3 :(得分:9)

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

答案 4 :(得分:8)

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

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

答案 5 :(得分:8)

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

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

  1. 控制面板
  2. 网络和共享中心
  3. 互联网选项(窗口左下角)
  4. 安全标签
  5. 选择&#34;本地Intranet&#34;
  6. 点击&#34;网站&#34;按钮
  7. 点击&#34;高级&#34;按钮
  8. 将网络驱动器的IP添加到区域。
  9. 不确定是什么让这项工作超过了所有其他选项,但这就​​解决了我的问题。现在所有项目和解决方案都没有问题。

答案 6 :(得分:2)

  1. 我只需要点击&#34;取消阻止&#34;在文件属性对话框中。

  2. 请检查您的文件是否只读,然后取消选中并执行第一步(在此之前浪费更多时间:))

答案 7 :(得分:1)

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

答案 8 :(得分:0)

尝试取消阻止文件desbloquer

这解决了我的问题。