MSBuild 條件

MSBuild 支援一組特定條件,這些條件可以套用至允許的 Condition 屬性。 下表將解釋那些條件。

條件

描述

'stringA' == 'stringB'

如果 stringA 等於 stringB,則評估為 true。

例如:

Condition="'$(CONFIG)'=='DEBUG'"

簡單的英數字串或布林值不需要單引號。 然而,空值需要單引號。

'stringA' != 'stringB'

如果 stringA 不等於 stringB,則評估為 true。

例如:

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

簡單的英數字串或布林值不需要單引號。 然而,空值需要單引號。

<, >, <=, >=

評估運算元的數值。 如果關係評估為 true,則傳回 true。 運算元必須評估為十進位或十六進位的數字。 十六進位的數字必須以 "0x" 為開頭。

注意事項注意事項

在 XML 中,必須逸出字元 < 和 >。符號 < 會以 &lt; 表示。符號 > 會以 &gt; 表示。

Exists('stringA')

如果存在名為 stringA 的檔案或資料夾,則評估為 true。

例如:

Condition="!Exists('$(builtdir)')"

簡單的英數字串或布林值不需要單引號。 然而,空值需要單引號。

HasTrailingSlash('stringA')

如果指定的字串包含後端的反斜線 (\) 或正斜線 (/) 字元,則評估為 true。

例如:

Condition="!HasTrailingSlash('$(OutputPath)')"

簡單的英數字串或布林值不需要單引號。 然而,空值需要單引號。

!

如果運算元評估為 false,則評估為 true。

And

如果兩個運算元都評估為 true,則評估為 true。

Or

如果至少有一個運算元評估為 true,則評估為 true。

()

如果內含的運算式評估為 true,則評估為 true 的群組機制。

請參閱

工作

逐步解說:從頭開始建立 MSBuild 專案檔案

參考

MSBuild 條件式建構

其他資源

MSBuild 參考