在一个VisualStudio项目,一个临时位置obj /debugging?

简而言之,我有一个单独的WCF VisualStudio项目,来编译CLient和Contract dll。 一旦我使用MS-BUILD(命令行)构build项目,我有一个后期构build的nant任务,将客户端和合同dll复制到另一个位置。

现在我更容易从obj / Debug文件夹中select这些dll(因为他们只有CLient和Contract dll而不是它们的依赖关系)。

但是我听说obj / Debug文件夹是临时的..我们需要依靠bin / Debug来获取dll。

是否有必要从斌/debugging,而不是OBJ /debugging,为什么?

obj \ Debug的作用是MSBuild的一个未记录的实现细节。 这是因为MSBuild喜欢根据项目设置有条件地复制文件。 确切的规则是错综复杂的,如果放一些,只能通过研究框架目录中的.targets文件来获得洞察力。 它本身高度依赖于你的目标.NET版本。

如果你真的想知道是什么让它打勾然后从obj \ Debug复制文件,看看什么命中风扇。 请注意,在您创建项目之后可能会发生这种情况,所以当构建失败或产生错误的文件时,将永远存在FUD。 如果这听起来不是很有成效,那么不是那么做,然后避免打破保修并从项目的输出目录复制。 bin \ Debug和bin \ Release默认情况下。 如果出现问题,至少你可以在SO上提出一个问题。

是。 您应该从bin/Debug或MSBuild上下文中的OutputPath变量中OutputPath二进制文件,

http://msdn.microsoft.com/en-us/library/bb629394.aspx