Visual studio MSBuild和VisualStudio之间的解决方案中的条件OutDir

Visual studio MSBuild和VisualStudio之间的解决方案中的条件OutDir,visual-studio,msbuild,Visual Studio,Msbuild,在VisualStudio中构建时,我希望输出路径是通常的相对路径(bin/Debug、bin/Release)。另一方面,当我使用msbuild时,我希望输出路径不同,但使用像$(SolutionDir)Build\xxx这样的宏 如何在解决方案文件中定义根据MSBuild命令行生成或Visual Studio IDE生成而有条件选择的条件输出路径?在Visual Studio内部生成时,属性$(BuildingInsideVisualStudio)根据设置为true。因此,使用OutDir属

在VisualStudio中构建时,我希望输出路径是通常的相对路径(bin/Debug、bin/Release)。另一方面,当我使用msbuild时,我希望输出路径不同,但使用像$(SolutionDir)Build\xxx这样的宏


如何在解决方案文件中定义根据MSBuild命令行生成或Visual Studio IDE生成而有条件选择的条件输出路径?

在Visual Studio内部生成时,属性$(BuildingInsideVisualStudio)根据设置为true。因此,使用OutDir属性作为条件重新定义该属性应该可以实现以下目的:

<PopertyGroup>
  <OutDir Condition="'$(BuildingInsideVisualStudio)'=='True'"/>$(SolutionDir)Build\xxx</OutDir>
</PopertyGroup>

$(SolutionDir)生成\xxx