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
.