1

设置:

我正在使用 MVC 3、EF 4.1、Visual Studio 2010 SP1 和更新到最新版本的 Power Tools。

通过上述安装,我不需要以前需要的 NuGet 包。一切都是RTM。

该项目已从 MVC 2 升级到 MVC 3。我最初尝试了升级工具,但这让我很伤心,所以我按照 MVC 3 自述文件中的说明手动进行了升级。

问题:

当尝试为 CRUD 功能使用新的控制器和视图脚手架时(针对 Code First DbContext),脚手架失败并出现以下错误:

Could not load file or assembly 'file:///C:\[PATH TO MY APP]\bin\Lanap.BotDetect.dll'
     or one of its dependencies. Operation is not supported. 
    (Exception from HRESULT: 0x80131515)

问题:

Lanap.BotDetect 是一个验证码控件。它工作正常并且在那里,我在其他页面中使用它没有问题,解决方案编译等等等等。所以这个dll没有问题。

但是,这个错误阻止了我使用新的脚手架功能。

我看不出它与新控制器的脚手架及其视图有什么关系,所以肯定有一些配置是错误的。

关于我可以在哪里看的任何建议?谷歌搜索结果一片空白。


编辑1:

我正在尝试按照评论中的建议使用 Fusion Log 查看失败的程序集绑定。没有失败的绑定显示(但这可能是我的错)但问题仍然存在:

为什么 MvcScaffolding 需要加载 Captcha .dll?它只是搭建一个控制器,T4 中没有任何关于这个 .dll 的说明

(注意:我没有编辑脚手架 T4 代码)

编辑2:

我尝试删除对 Lanap.BotDetect 的引用,并且错误更改为无法打开具有连接字符串的配置文件(我将连接字符串分流到 db.config 字符串,只是在查找时减少了视觉上的痛苦在配置文件中)。

我放弃了这个应用程序的脚手架。它适用于干净的新应用程序,但不适用于存在大量预先存在代码的应用程序。

4

2 回答 2

1

我找到了另一个解决方案。对我来说,问题是问题在于它是通过网络驱动器构建的。因此,当我将项目移动到我机器的本地位置并重建项目时,它纠正了所有内容。我用屏幕截图详细说明了所有内容,在这里......

http://ryandunn.co/mvc-growth-pains-could-not-load-file-controller-dll

简单地说,检查项目的位置并将其移动到 C: 之后,快速重建让我恢复正常工作。

于 2011-11-30T22:27:34.387 回答
0

所以我知道你已经继续前进,但我遇到了同样的问题,只是找到了解决方案。事实证明,错误是由于程序集不受信任,即您从互联网上下载了它。

您可以右键单击 .dll 并取消阻止它以解决问题。有关如何取消阻止的信息,请参阅以下内容

http://blogs.msdn.com/b/brada/archive/2009/12/11/visual-studio-project-sample-loading-error-assembly-could-not-be-loaded-and-will-be-忽略-不能-加载-文件-或-程序集-或-其依赖项-操作-不支持-异常-from-hresult-0x80131515.aspx

于 2011-07-15T17:14:51.640 回答