Compilation 如何使MSbuild仅使用一个;“定义常量”;条件测试?

Compilation 如何使MSbuild仅使用一个;“定义常量”;条件测试?,compilation,msbuild,include,conditional-statements,Compilation,Msbuild,Include,Conditional Statements,我在定义为“ABC;XYZ”的C#项目中使用了条件编译符号,并且我可以在项目XML文件中使用以下符号在MSBuild期间对项目代码文件进行条件包含: <Compile Include="SomeFile.cs" Condition="$(DefineConstants)'=='ABC;XYZ'"/> 但我需要以下类似的东西,但它不起作用: <Compile Include="SomeFile.cs" Condition="$(DefineConstants)'=='ABC

我在定义为“ABC;XYZ”的C#项目中使用了条件编译符号,并且我可以在项目XML文件中使用以下符号在MSBuild期间对项目代码文件进行条件包含:

<Compile Include="SomeFile.cs" Condition="$(DefineConstants)'=='ABC;XYZ'"/>

但我需要以下类似的东西,但它不起作用:

<Compile Include="SomeFile.cs" Condition="$(DefineConstants)'=='ABC'"/>

是否可以只使用其中一个定义常量进行条件测试?

我想出来了。。。有帮助

本质上,您只需查看字符串,看看它是否包含您希望基于条件的标记。在我的例子中,这是它的代码:

<Compile Include="SomeFile.cs" Condition="$(DefineConstants.Contains('ABC'))" />