9

我有一个 ASP.NET 应用程序,我也想将它用作类库。(这是一个带有 .svc 文件的 Castle Windsor 应用程序,它使用 Windsor 的 WCF 工具,但对于任何其他带有 ASPX 页面和其他一些公共类的 Web 应用程序来说,情况都是一样的。)

我实际上想使用“类库”或“WCF 库”项目模板,因为这允许我选择单独的调试和发布文件夹等。但这不会让我添加 Global.asax 文件。

所以我切换到“Web 应用程序”模板,就可以了。但是,如果我配置单独的调试和发布文件夹,Web 应用程序将无法运行。

看起来 Web 应用程序要求程序集直接位于“bin”目录中,而不是“bin\debug”中。

有没有办法同时实现这两者,即 Visual Studio 中的单独构建文件夹和调试支持?

我不介意在 IIS 中设置本地 Web 应用程序,因此它不必是集成 Web 服务器。

4

1 回答 1

6

正如您所发现的,您似乎不能这样做,ASP.NET 网站被硬编码为从\bin目录运行。您可以更改项目属性中的输出文件夹并重定向程序集绑定,但最终仍会丢失 DLL。

查看加载失败的堆栈跟踪,运行时只查看: $(ProjectDir)\bin\assembly.dll$(ProjectDir)\bin\assembly\assembly.dll.

它对\bin\Debug\bin\Release文件夹没有兴趣,它们将被忽略。

于 2015-01-29T15:35:09.400 回答