Propriétés MSBuild
Mise à jour : novembre 2007
Les propriétés sont des paires clé/valeur qui peuvent être utilisées pour configurer les générations. Elles sont utiles pour passer des valeurs aux tâches, évaluer des conditions et stocker des valeurs qui seront référencées dans tout le fichier projet.
Définition et référence de propriétés dans un fichier projet
Les propriétés sont déclarées en créant un élément avec le nom de la propriété comme enfant d'un élément PropertyGroup. Par exemple, le code XML suivant crée une propriété nommée BuildDir avec la valeur Build.
<PropertyGroup>
<BuildDir>Build</BuildDir>
</PropertyGroup>
Vous référencez les propriétés dans la totalité du fichier projet avec la syntaxe $(PropertyName). Par exemple, vous référencez la propriété de l'exemple précédent avec $(BuildDir).
Définition des propriétés à partir de la ligne de commande
MSBuild vous permet de définir les propriétés à partir de la ligne de commande à l'aide du commutateur de ligne de commande /property ou /p. Les valeurs de propriété reçues de la ligne de commande substituent les valeurs de propriété définies dans le fichier projet et celles héritées des variables d'environnement.
L'exemple de code suivant définit la propriété Configuration avec la valeur DEBUG.
MSBuild.exe MyProj.proj /p:Configuration=DEBUG
Propriétés réservées
MSBuild réserve certains noms de propriétés pour stocker des informations sur le fichier projet et les binaires MSBuild. Ces propriétés sont référencées avec la notation $ comme toute autre propriété. Pour plus d'informations, consultez Comment : référencer le nom ou l'emplacement du fichier projet et MSBuild, propriétés réservées.
Variables d'environnement
Vous pouvez référencer les variables d'environnement des fichiers projet de la même façon que les propriétés réservées. Par exemple, pour utiliser la variable d'environnement PATH dans votre fichier projet, utilisez $(Path). Si le projet contient une définition de propriété qui a le même nom qu'une variable d'environnement, la propriété du projet substitue la valeur de la variable d'environnement. Pour plus d'informations, consultez Comment : utiliser des variables d'environnement dans une génération.
Stockage de XML dans les propriétés
Les propriétés peuvent contenir un code XML arbitraire, qui peut aider à passer des valeurs aux tâches ou à afficher des informations d'enregistrement. L'exemple suivant affiche la propriété ConfigTemplate avec une valeur qui contient du code XML et d'autres références de propriété. MSBuild remplace les références de propriété par leurs valeurs de propriété respectives. Comme les valeurs des propriétés sont interprétées de haut en bas, dans cet exemple, $(MySupportedVersion), $(MyRequiredVersion) et $(MySafeMode) doivent avoir été déjà définies.
<PropertyGroup>
<ConfigTemplate>
<Configuration>
<Startup>
<SupportedRuntime
ImageVersion="$(MySupportedVersion)"
Version="$(MySupportedVersion)"/>
<RequiredRuntime
ImageVersion="$(MyRequiredVersion)
Version="$(MyRequiredVersion)"
SafeMode="$(MySafeMode)"/>
</Startup>
</Configuration>
</ConfigTemplate>
</PropertyGroup>
Voir aussi
Tâches
Comment : utiliser des variables d'environnement dans une génération
Comment : référencer le nom ou l'emplacement du fichier projet