MSBuild’deki kaçış özel karakterleri
Belirli karakterlerin MSBuild proje dosyalarında özel anlamı vardır. Karakterlere örnek olarak noktalı virgül (;
) ve yıldız işareti (*
) verilebilir. Bu özel karakterlerin tam listesi için bkz . MSBuild özel karakterleri.
Bu özel karakterleri proje dosyasında değişmez değer olarak kullanmak için, söz dizimi %<xx>
kullanılarak belirtilmelidir. Burada <xx>
, karakterin ASCII onaltılık değerini temsil eder.
MSBuild özel karakterleri
Özel karakterlerin kullanıldığı yerlerin bir örneği, öğe listelerinin özniteliğindedir Include
. Örneğin, aşağıdaki öğe listesi iki öğe bildirir: MyFile.cs ve MyClass.cs.
<Compile Include="MyFile.cs;MyClass.cs"/>
Adında noktalı virgül bulunan bir öğeyi bildirmek istiyorsanız, noktalı virgülden kaçmak ve MSBuild'in iki ayrı öğe bildirmesini önlemek için söz dizimini kullanmanız %<xx>
gerekir. Örneğin, aşağıdaki öğe noktalı virgülden kaçar ve adlı MyFile.cs;MyClass.cs
bir öğe bildirir.
<Compile Include="MyFile.cs%3BMyClass.cs"/>
Dizelerden kaçmak için bir özellik işlevi de kullanabilirsiniz. Örneğin, bu yukarıdaki örne eşdeğerdir.
<Compile Include="$([MSBuild]::Escape('MyFile.cs;MyClass.cs'))" />
MsBuild özel karakterini değişmez karakter olarak kullanmak için
ASCII karakterinin onaltılık değerini temsil eden özel karakterin <xx>
yerine gösterimini %<xx>
kullanın. Örneğin, sabit karakter olarak yıldız işareti (*
) kullanmak için değerini %2A
kullanın.