Zápis speciálních znaků pomocí escape sekvence v nástroji MSBuild

Některé znaky mají zvláštní význam v souborech projektu MSBuild. Mezi příklady znaků patří středníky (;) a hvězdičky (*). Úplný seznam těchto speciálních znaků najdete v tématu Speciální znaky nástroje MSBuild.

Aby bylo možné tyto speciální znaky použít jako literály v souboru projektu, musí být zadány pomocí syntaxe %<xx>, kde <xx> představuje šestnáctkovou hodnotu znaku ASCII.

Speciální znaky nástroje MSBuild

Jeden příklad, kde se používají speciální znaky, je v Include atributu seznamů položek. Například následující seznam položek deklaruje dvě položky: MyFile.cs a MyClass.cs.

<Compile Include="MyFile.cs;MyClass.cs"/>

Pokud chcete deklarovat položku, která obsahuje středník v názvu, je nutné použít %<xx> syntaxi k řídicímu znaku středníku a zabránit nástroji MSBuild v deklarování dvou samostatných položek. Například následující položka unikne středníku a deklaruje jednu položku s názvem MyFile.cs;MyClass.cs.

<Compile Include="MyFile.cs%3BMyClass.cs"/>

K řídicím řetězcům můžete také použít funkci vlastnosti. To je například ekvivalentní výše uvedenému příkladu.

<Compile Include="$([MSBuild]::Escape('MyFile.cs;MyClass.cs'))" />

Použití speciálního znaku NÁSTROJE MSBuild jako literálového znaku

Místo speciálního znaku použijte notaci %<xx> , kde <xx> představuje šestnáctkovou hodnotu znaku ASCII. Chcete-li například použít hvězdičku (*) jako literálový znak, použijte hodnotu %2A.