我希望有人可以回答这个问题,因为它让我发疯。我在Windows XP上安装了Monodevelop。版本为2.8.6.5。我将默认/活动运行时设置为Microsoft .Net,并通过项目设置BUILD - > General-> Target framework将我的项目设置为目标.net 4.0。
当我从应用程序输出窗口调试它时,它加载XSP 2.0并尝试使用旧的.Net 2 DLL,即从.Net 2 GAC - C:\ windows \ assembly而不是.Net 4 GAC。
当我调试将Mono设置为活动运行时时,它可以正常工作。
我收到错误,这是可以理解的,因为构建的目标是.Net 4,但它正在查看错误的运行时:
无法加载文件或程序集“TestWeb”或其依赖项之一。此程序集由比当前加载的运行时更新的运行时构建,无法加载。 描述:执行当前Web请求期间发生未处理的异常。请查看堆栈跟踪,以获取有关错误及其在代码中的起源位置的更多信息。
异常详细信息:System.BadImageFormatException:无法加载文件或程序集“TestWeb”或其依赖项之一。此程序集由比当前加载的运行时更新的运行时构建,无法加载。
来源错误:
在执行当前Web请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常的起源和位置的信息。
以下是“输出”窗口的输出:
Loaded Module 'C:\WINDOWS\assembly\GAC_32\mscorlib\2.0.0.0__b77a5c561934e089\mscorlib.dll'
Started Thread 1872
Loaded Module 'C:\Program Files\MonoDevelop\bin\xsp2.exe'
Loaded Module 'C:\WINDOWS\assembly\GAC_MSIL\MonoDevelop.Xsp\2.8.0.0__0738eb9f132ed756\MonoDevelop.Xsp.dll'
Loaded Module 'C:\WINDOWS\assembly\GAC_MSIL\System\2.0.0.0__b77a5c561934e089\System.dll'
Loaded Module 'C:\WINDOWS\assembly\GAC_32\System.Web\2.0.0.0__b03f5f7f11d50a3a\System.Web.dll'
Loaded Module 'C:\WINDOWS\assembly\GAC_MSIL\System.Configuration\2.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll'
Loaded Module 'C:\WINDOWS\assembly\GAC_MSIL\System.Xml\2.0.0.0__b77a5c561934e089\System.Xml.dll'
非常感谢
西蒙。