我有一个ASP.NET应用程序,我也想用它作为类库。 (这是使用Windsor的WCF工具的.svc文件的Castle Windsor应用程序,但与使用ASPX页面和其他公共类的任何其他Web应用程序的情况相同。)
我实际上想使用“类库”或“WCF库”项目模板,因为这允许我选择单独的调试和发布文件夹等。 但这不会让我添加Global.asax文件。
所以我切换到“web应用程序”模板,这没关系。 但是,如果我配置单独的调试和发布文件夹,则Web应用程序将无法运行。
看起来Web应用程序要求程序集直接驻留在“bin”目录中,而不是“bin \ debug”。
有没有办法实现这两者,即在Visual Studio中单独构建文件夹和调试支持?
我不介意在IIS中设置本地Web应用程序,因此它不必是集成Web服务器。
答案 0 :(得分:3)
正如您所发现的,似乎您无法做到这一点,ASP.NET网站被硬编码为从\bin
目录运行。您可以更改项目属性中的输出文件夹并重定向程序集绑定,但您最终仍会丢失DLL。
查看失败加载的堆栈跟踪,运行时只查看:
$(ProjectDir)\bin\assembly.dll
和$(ProjectDir)\bin\assembly\assembly.dll
。
它对\bin\Debug
或\bin\Release
文件夹没有兴趣,它们将被忽略。