Élément Otherwise (MSBuild)
Spécifie le bloc de code à exécuter si et seulement si les conditions de tous les éléments When
correspondent à la valeur false
.
<Projet><Choisir><Quand><Choisir> ... <Autrement><Choisir> ...
Syntaxe
<Otherwise>
<PropertyGroup>... </PropertyGroup>
<ItemGroup>... </ItemGroup>
<Choose>... </Choose>
</Otherwise>
Attributs et éléments
Les sections suivantes décrivent des attributs, des éléments enfants et des éléments parents.
Attributs
Aucune.
Éléments enfants
Élément | Description |
---|---|
Choose | Élément facultatif. Évalue les éléments enfants pour sélectionner une section de code à exécuter. Un élément Otherwise peut ne contenir aucun élément Choose ou en contenir plusieurs. |
ItemGroup | Élément facultatif. Contient un ensemble d’éléments Item définis par l’utilisateur. Un élément Otherwise peut ne contenir aucun élément ItemGroup ou en contenir plusieurs. |
PropertyGroup | Élément facultatif. Contient un ensemble d’éléments Property définis par l’utilisateur. Un élément Otherwise peut ne contenir aucun élément PropertyGroup ou en contenir plusieurs. |
Éléments parents
Élément | Description |
---|---|
Choose | Évalue les éléments enfants pour sélectionner une section de code à exécuter. |
Notes
Un élément Choose
ne peut comprendre qu’un seul élément Otherwise
qui doit figurer en dernière position.
Les éléments Choose
, When
et Otherwise
sont utilisés ensemble pour permettre la sélection d’une section de code spécifique à exécuter parmi plusieurs options possibles. Pour plus d’informations, consultez Constructions conditionnelles.
Exemple
Le projet suivant utilise l’élément Choose
pour sélectionner l’ensemble de valeurs de propriété à définir dans les éléments When
. Si les attributs Condition
des deux éléments When
s’évaluent à false
, les valeurs des propriétés dans l’élément Otherwise
sont définies.
<Project
xmlns="http://schemas.microsoft.com/developer/msbuild/2003" >
<PropertyGroup>
<Configuration Condition="'$(Configuration)' == ''">Debug</Configuration>
<OutputType>Exe</OutputType>
<RootNamespace>ConsoleApplication1</RootNamespace>
<AssemblyName>ConsoleApplication1</AssemblyName>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<Choose>
<When Condition=" '$(Configuration)'=='debug' ">
<PropertyGroup>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>.\bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
</PropertyGroup>
<ItemGroup>
<Compile Include="UnitTesting\*.cs" />
<Reference Include="NUnit.dll" />
</ItemGroup>
</When>
<When Condition=" '$(Configuration)'=='retail' ">
<PropertyGroup>
<DebugSymbols>false</DebugSymbols>
<Optimize>true</Optimize>
<OutputPath>.\bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
</PropertyGroup>
</When>
<Otherwise>
<PropertyGroup>
<DebugSymbols>true</DebugSymbols>
<Optimize>false</Optimize>
<OutputPath>.\bin\$(Configuration)\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
</PropertyGroup>
</Otherwise>
</Choose>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
</Project>