2013-01-23 2 views
0

Est-il possible de passer MSBuild certaines propriétés de ligne de commande:MSBuild Iterate Propriétés

msbuild.exe /p:Configuration=Release;labDeploy=false;prodDeploy=true 

itérer en quelque sorte à travers Puis les paires clé/valeur transmise via les propriétés arg.

Si oui, comment?

Répondre

0

Vous ne dites pas ce que vous voulez utiliser pour, mais si vous essayez de les utiliser pour le contrôle d'exécution, regardez MSBuild Conditions. Par exemple, le «produit» de mon entreprise, entièrement implémenté, consiste en une application client-serveur traditionnelle, une application de reporting basée sur le Web et une implémentation Silverlight plus récente de certaines applications client-serveur.

Dans mon fichier de projet maître MSBuild, j'ai des cibles distinctes pour chaque application, qu'elles soient ou non exécutées est contrôlé par une vérification Condition de quelques paramètres de ligne de commande.

<!-- run the builds for the selected build types --> 
    <Target Name="RunBuild" DependsOnTargets="ValidateBuildSelected"> 
    <CallTarget Targets="BuildWindowsClientApp" Condition="'$(BuildWindowsClientApp)'=='TRUE'" /> 
    <CallTarget Targets="BuildWebReportingApp" Condition="'$(BuildWebReportingApp)'=='TRUE'" /> 
    <CallTarget Targets="BuildWebClientApp" Condition="'$(BuildWebClientApp)'=='TRUE'" /> 
    </Target> 

Je peux exécuter une ou toutes les options en fonction de la façon dont j'ai défini la chaîne de paramètres.