MVC4项目和ImageResizer

4
问题:MVC4测试应用程序使用ImageResizer访问任何页面时均响应“Could not load type 'ImageResizer.InterceptModule'”。
为了测试和了解ImageResizer的工作原理,在VS 2012中创建了一个MVC4项目,并创建了一个单个控制器来显示HelloWorld页面。结果如预期。
接下来,从NuGet添加了ImageResizer。安装了适用于MVC的ImageResizer Web.Config安装程序。此包添加了三个附加包:
ImageResizer Web.Config Installation ImageResizer.MVC - MVC友好实用工具 ImageResizer 尝试运行应用程序会导致黄色的死屏,“Could not load type 'ImageResizer.InterceptModule.'”
未成功解决的尝试包括:
1. 检查DLL是否存在。 2. 删除并重新安装软件包。 3. 从正常运行的WebForms应用程序复制ImageResizer dll 4. ImageResizer故障排除指南上的第一项似乎不是问题:“1.您的网站在其中有一个'子站点'(应用程序文件夹)。 应用程序文件夹继承其父站点的所有Web.config设置,同时希望在自己的/ bin文件夹中拥有这些设置引用的所有dll的自己的副本。 您可以通过(a)将应用程序文件夹更改为虚拟文件夹,(b)将ImageResizer.dll和插件的副本添加到该应用程序内部的/ bin文件夹中,或(c)在子Web.config中使用语句来取消来自父Web.config的继承语句 来解决此问题。选项(c)将禁用子应用程序内的图像调整大小。”
是的,在视图目录中有一个web.config文件。尝试创建并将image resizer dll复制到视图bin目录 - 未成功。尝试在views目录下的web.config中添加删除。同样没有成功。

你在哪个Web服务器上运行这个程序?你是否确保没有子应用程序? - Lilith River
IIS 7.5 - 没有子应用程序。 - Colan Arnold
1个回答

12

问题解决了-自己造成的。

最初给测试项目命名为imageresizer似乎是个好主意,这当然创建了一个名为imageresizer的dll文件,它与真正的imageresizer dll文件发生了冲突。


2
我得把这个加到故障排除页面。这是我第一次看到这种原因。 - Lilith River
值得注意的是,您可以接受此作为正确答案。至少,它有助于将此标记为“已关闭”问题。 - Tieson T.
@ComputerLinguist 你从来没有添加它 :-( http://imageresizing.net/docs/troubleshoot - 我做了完全相同的事情。好像还有其他几个人也是这样 :) Visual Studio 真的应该警告这种情况,但对于创建独立的大小调整 Web 项目的人来说,这可能非常普遍。 - Simon_Weaver
哦,亲爱的...我做了同样的事情 :o - David Aleu

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接