Usare caratteri di escape speciali in MSBuild
Alcuni caratteri hanno un significato particolare nei file di progetto di MSBuild. Tra gli esempi di carattere sono inclusi il punto e virgola (;
) e l'asterisco (*
). Per un elenco completo di questi caratteri speciali, vedere Caratteri speciali di MSBuild.
Per usare questi caratteri speciali come valori letterali in un file di progetto, è necessario specificarli usando la sintassi %<xx>
, dove <xx>
rappresenta il valore esadecimale ASCII del carattere.
Caratteri speciali di MSBuild
I caratteri speciali sono usati, ad esempio, nell'attributo Include
degli elenchi di elementi. L'elenco di elementi seguenti, ad esempio, dichiara due elementi: MyFile.cs e MyClass.cs.
<Compile Include="MyFile.cs;MyClass.cs"/>
Se si desidera dichiarare un elemento contenente un punto e virgola nel nome, è necessario usare la %<xx>
sintassi per eseguire l'escape del punto e virgola e impedire a MSBuild di dichiarare due elementi separati. L'elemento seguente, ad esempio, usa il carattere di escape per il punto e virgola e dichiara un solo elemento denominato MyFile.cs;MyClass.cs
.
<Compile Include="MyFile.cs%3BMyClass.cs"/>
È anche possibile usare una funzione di proprietà per aggiungere caratteri di escape alle stringhe. Ad esempio, questo equivale all'esempio precedente.
<Compile Include="$([MSBuild]::Escape('MyFile.cs;MyClass.cs'))" />
Per usare un carattere speciale di MSBuild come carattere letterale
Usare la notazione %<xx>
al posto del carattere speciale, dove <xx>
rappresenta il valore esadecimale del carattere ASCII. Ad esempio, per usare un asterisco (*
) come carattere letterale, usare il valore %2A
.