为所有配置设置相同的输出路径会产生什么后果?

时间:2015-05-12 12:48:45

标签: c# asp.net asp.net-mvc visual-studio asp.net-web-api

为了在 Visual Studio 2013 中调试 Web API 项目,我必须将调试配置的输出路径设置为{{1 }}(意味着文件最终在bin\相对于解决方案根文件夹),从一些答案here可以看出。

但现在我面临的问题是我们在构建服务器设置中的几个地方使用了路径{ProjectName}\bin。我非常希望统一 Debug 和其他 Visual Studio 配置的设置。

因此,我的问题是:您是否知道将所有配置的输出文件夹统一为bin\{ConfigurationName}会导致文件夹结构bin\的任何问题后果?

如果这样做,有没有办法调试Web API项目而不更改{ProjectName}\bin的输出文件夹?

1 个答案:

答案 0 :(得分:5)

无后果

默认情况下,Project构建存储在项目目录中,如:

{Solution}/{Project}/obj/Debug/{Project}.dll    
{Solution}/{Project}/obj/Release/{Project}.dll

每个项目文件夹中每种构建类型的文件夹

如果所有二进制文件都输出到同一目录,它们将

  • 在开发环境中以相同的方式在运行时链接
  • 以相同的方式解决依赖关系
  • 以相同的方式部署

结果将是

的目录结构
{Output Directory}/Debug/{Project}.dll    
{Output Directory}/Release/{Project}.dll    

IDE可自定义:

无需将Project版本保留在Project目录中。项目构建文件夹是配置默认值。 IDE旨在让您在舒适区域内工作。如果您希望对所有程序集进行分组,或者发现它可以解决问题,则可以自由更改此构建配置。

解决Web-API问题?

您不必将输出路径更改为Debug Web API 。将 Web-API 附加到 worker process

1)点击VS Explorer中的 Web API项目

2)在Visual Studio菜单中单击调试

3)点击附加到流程...

4)点击/选择名为 w3wp.exe的所有进程