在MSBUILD中,如何指定检查命令行或VS是否启动它的条件?

zek*_*haw 13 msbuild

我有一个csproj,我想在Visual Studio中触发特定文件的打开,只有目标是在Visual Studio中执行,而不是从MSBUILD命令行执行.我该怎么做呢?

sev*_*tov 34

MSDN页面引用:

在Visual Studio中构建时,属性$(BuildingInsideVisualStudio)设置为true.这可以在您的项目或.targets文件中使用,以使构建行为不同.

示例如何在.*proj或.targets文件中使用它:

<PropertyGroup>
  <MyProperty Condition="'$(BuildingInsideVisualStudio)' == 'true'">This build is done by VS</MyProperty>
  <MyProperty Condition="'$(BuildingInsideVisualStudio)' != 'true'">This build is done from command line of by TFS</MyProperty>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)


Bry*_*anJ 0

如果我理解正确的话,您想在 Visual Studio 中构建时打开文件,而不是使用 MSBuild 从命令行打开文件?

如果是这种情况,请在 Visual Studio 中指定 PreBuild 或 PostBuild。

  1. 右键单击解决方案资源管理器中的项目并选择“属性”
  2. 选择事件选项卡
  3. 添加构建前或构建后事件以打开所需的文件