【问题标题】:msbuild task conditional operators in parameter value参数值中的 msbuild 任务条件运算符
【发布时间】:2021-12-05 02:06:47
【问题描述】:

在调用MSBuild任务时,有什么方法可以使用条件变量作为参数吗?

例如,如果我们在 MySampleTask msbuild 任务中将文本作为字符串参数:

<MySampleTask text="if a not empty ? a : b" />

如果我们可能有 2 个本地字符串变量 a 和 b,如何传递文本字符串变量?如何实现上述代码中的行为?

【问题讨论】:

    标签: msbuild msbuild-task


    【解决方案1】:

    我不知道这样的运算符,但你想要的相当于

    <MySampleTask text="$(a)" Condition="'$(a)' != ''" />
    <MySampleTask text="$(b)" Condition="'$(a)' == ''" />
    

    或者,同样的原则,但首先应用于属性;可能是最“标准”的方式:

    <PropertyGroup>
      <a Condition="'$(a)' == ''">$(b)</a>
    </PropertyGroup>
    
    <MySampleTask text="$(a)" />
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-25
      • 1970-01-01
      • 2011-03-11
      • 1970-01-01
      • 2018-06-09
      • 1970-01-01
      • 1970-01-01
      • 2019-02-25
      相关资源
      最近更新 更多