我在ASP.NET MVC 4项目中使用ImageResizer library(版本3.2.4),使用以下插件:Watermark,MvcRoutingShim,DiskCache和SimpleFilters。
第一次在Visual Studio 2012中启动项目时,一切正常。
但是在停止并重新启动项目2到3次后,插件无法加载,这在诊断页中得到了确认:
(...)
Plugins(ConfigurationError): Failed to load plugin by name "Watermark"
Verify the plugin DLL is located in /bin, and that the name is spelled correctly.
Plugins(ConfigurationError): Failed to load plugin by name "MvcRoutingShim"
Verify the plugin DLL is located in /bin, and that the name is spelled correctly.
(...) etc.
DLL文件存在于\ bin文件夹中。
我可以通过在Visual Studio中执行项目的“清理”操作,然后“重建”来解决问题。
但为什么插件在一段时间后无法加载?
答案 0 :(得分:0)
VS很可能在构建代码中未引用的依赖项时很懒惰。
尝试从代码而不是从Web.config引用DLL,它可能会有所帮助。
将以下代码放入Application_Start:
new WatermarkPlugin().Install(Config.Current);
查看水印是否仍然显示在诊断页面上。