【问题标题】:How do I get MSbuild to use only one of the "DefineConstants" for condition test?如何让 MSbuild 仅使用“DefineConstants”之一进行条件测试?
【发布时间】:2016-11-12 19:03:30
【问题描述】:

我在定义为“ABC;XYZ”的 C# 项目中有条件编译符号,我可以在项目 XML 文件中使用以下内容在 MSBuild 期间有条件地包含项目代码文件:

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

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

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

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

【问题讨论】:

    标签: compilation msbuild include conditional-statements


    【解决方案1】:

    我想通了...this link 帮助了。

    基本上,您只需要查看字符串以查看它是否包含您想要作为条件基础的任何标签。就我而言,这是它的代码:

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

    【讨论】:

    • 感谢您发布此信息。我无法通过 MS 文档弄清楚如何做到这一点。再次,SO 来拯救这一天。
    猜你喜欢
    • 2012-05-29
    • 2011-11-27
    • 1970-01-01
    • 2014-09-09
    • 2022-12-16
    • 1970-01-01
    • 1970-01-01
    • 2010-11-02
    • 1970-01-01
    相关资源
    最近更新 更多