【发布时间】:2021-12-05 02:06:47
【问题描述】:
在调用MSBuild任务时,有什么方法可以使用条件变量作为参数吗?
例如,如果我们在 MySampleTask msbuild 任务中将文本作为字符串参数:
<MySampleTask text="if a not empty ? a : b" />
如果我们可能有 2 个本地字符串变量 a 和 b,如何传递文本字符串变量?如何实现上述代码中的行为?
【问题讨论】:
标签: msbuild msbuild-task
在调用MSBuild任务时,有什么方法可以使用条件变量作为参数吗?
例如,如果我们在 MySampleTask msbuild 任务中将文本作为字符串参数:
<MySampleTask text="if a not empty ? a : b" />
如果我们可能有 2 个本地字符串变量 a 和 b,如何传递文本字符串变量?如何实现上述代码中的行为?
【问题讨论】:
标签: msbuild msbuild-task
我不知道这样的运算符,但你想要的相当于
<MySampleTask text="$(a)" Condition="'$(a)' != ''" />
<MySampleTask text="$(b)" Condition="'$(a)' == ''" />
或者,同样的原则,但首先应用于属性;可能是最“标准”的方式:
<PropertyGroup>
<a Condition="'$(a)' == ''">$(b)</a>
</PropertyGroup>
<MySampleTask text="$(a)" />
【讨论】: