Sdílet prostřednictvím


Zvolte prvek (MSBuild)

Vyhodnocuje podřízené prvky vyberte jednu sadu ItemGroup prvky nebo PropertyGroup prvky vyhodnotit.

<Choose>
    <When Condition="'StringA'=='StringB'">... </When>
    <Otherwise>... </Otherwise>
</Choose>

Atributy a elementy

Následující části popisují atributy, podřízené prvky a rodičovské prvky.

Atributy

Žádný

Podřízené elementy

Element

Description

Jinak

Volitelný prvek.

Určuje blok kódu PropertyGroup a ItemGroup prvky pro vyhodnocení, zda podmínky všech When prvky vyhodnoceny false.Může být žádná nebo jedna Otherwise prvky Choose prvek a musí být poslední prvek.

Při

Požadovaný prvek.

Určuje možné blok kódu Choose prvku vyberte.Může být jeden nebo více When prvky Choose prvku.

Nadřazené elementy

Element

Description

Jinak

Určuje blok kódu spouštět, pokud podmínky všech When prvky vyhodnoceny false.

Project

Požadované kořenový prvek MSBuild souboru projektu.

Při

Určuje možné blok kódu Choose prvku vyberte.

Poznámky

Choose, When, A Otherwise prvky jsou použity společně umožňují vybrat jednu část kódu spouštět z počtu možných alternativ.Další informace naleznete v tématu Nástroj MSBuild podmíněné konstrukce.

Příklad

Následující projekt používá Choose prvku vyberte která sada hodnot vlastností v When prvky nastavení.Pokud Condition oba atributy When prvky vyhodnoceny false, hodnoty vlastnosti v Otherwise nastavení prvku.

<Project
    xmlns="https://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>

Viz také

Referenční dokumentace

Nástroj MSBuild podmíněné konstrukce

Koncepty

Odkaz na projekt MSBuild soubor schématu