已经存在哪些msbuild保留类型/变量可在.csproj中使用

本文关键字:变量 csproj 类型 存在 保留 msbuild | 更新日期: 2023-09-27 18:24:01

在我的.csproj文件中有一些。。。快捷方式?系统变量?对于某些事情。像这样(在文件顶部附近找到):

<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>

但似乎还有更多的选项,如$(配置)和$(平台)。我在我的文件中发现了以下内容:

@(MainAssembly)
@(_DebugSymbolsOutputPath)
$(MSBuildToolsPath)
$(OutDir)
$(CopyBuildOutputToOutputDirectory)
$(ProjectDir)
$(_DebugSymbolsProduced)
$(SkipCopyBuildProduct)
$(Platform)
$(Configuration)

我不想创建自己的变量或类似的东西,我只想知道已经存在哪些可供使用的保留类型。

EDIT我在Microsoft.Build.CommonTypes.xsd中找到了我想要的答案它包含这样的东西。

已经存在哪些msbuild保留类型/变量可在.csproj中使用

您在这里看到的称为MsBuild属性。最容易将MsBuild视为用于构建的脚本语言,并将其视为该语言中的变量。就像任何语言中的变量一样,用户可以自由地引入新的变量,因此没有"所有有效命令"的真正概念。用户可以定义更多,因此有效命令集实际上是无限的

不过,这里有许多众所周知的保留物业。这可能就是您正在寻找的

MSbuild保留和众所周知的属性