Visual Studio 构建事件不等条件

7
有没有一种方法可以在构建事件中使用不等于条件?
就像这样:
if $(ConfigurationName) != Debug xcopy ...

请注意,这是构建事件(类似批处理语法),而不是MSBuild任务(它确实支持!=)。

不,它不起作用,似乎编译器不接受'!='。 - EdRbt
这有点像是一个hack,但你可以让它工作:https://dev59.com/oGIk5IYBdhLWcg3wp_mM#19089118 - Lynn Crumbling
2
在我看来,这不是重复的问题。OP询问的是构建事件语法中“不等于”运算符的一般情况,而不仅仅是调试构建条件;我的建议是:根据msdn的说明,构建事件语法是DOS命令语法,因此应该可以这样写:if $(ConfigurationName) NEQ Debug xcopy ... - Cee McSharpface
重复覆盖了许多“else”分支的选项... 我认为简单的neq也应该可以工作(因为VS基本上运行bat文件来运行事件。您可以通过键入“help if”在CMD中获取所有bat比较运算符)。 - Alexei Levenkov
1个回答

12

更新:

我的错,我以为这是用于MSBuild的。但如果它只是用于构建事件,那么它将像批处理脚本一样工作。

if not "$(ConfigurationName)" == "Debug" (
  echo "hello world"
)

对于 MSBuild

它就像是以下的内容:

Condition="'$(Configuration)'!='DEBUG'"

例子:

<When Condition=" '$(Configuration)'!='DEBUG' ">
....
</When>

详情请参见 MSBuild 条件


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接