Elemento ItemGroup (MSBuild)

Contiene un set di elementi Item definiti dall'utente. Ogni elemento usato in un progetto MSBuild deve essere specificato come figlio di un ItemGroup elemento.

<Project><ItemGroup>

Sintassi

<ItemGroup Condition="'String A' == 'String B'"
           Label="Label">
    <Item1>... </Item1>
    <Item2>... </Item2>
</ItemGroup>

Attributi ed elementi

Nelle sezioni seguenti vengono descritti gli attributi, gli elementi figlio e gli elementi padre.

Attributi

Attributo Descrizione
Condition Attributo facoltativo. Condizione da valutare. Per altre informazioni, vedere Condizioni.
Label Attributo facoltativo. Identifica l'oggetto ItemGroup.

Elementi figlio

Elemento Descrizione
Articolo Definisce gli input per il processo di compilazione. Possono esistere zero o più elementi Item in un ItemGroup.

Oltre all'elemento generico Item , ItemGroup consente elementi figlio che rappresentano tipi di elementi, ad esempio Reference, ProjectReference, Compilee altri, elencati in Elementi comuni del progetto MSBuild.

Elementi padre

Elemento Descrizione
Progetto Elemento radice obbligatorio di un file di progetto MSBuild.
Destinazione A partire da .NET Framework 3.5, l'elemento ItemGroup può essere visualizzato in un elemento Target. Per altre informazioni, vedere Destinazioni.

Esempio

L'esempio di codice seguente illustra le raccolte di elementi definite dall'utente Res e CodeFiles in un elemento ItemGroup. Ogni elemento nella raccolta di elementi Res contiene un elemento ItemMetadata figlio definito dall'utente.

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <ItemGroup>
        <Res Include = "Strings.fr.resources" >
            <Culture>fr</Culture>
        </Res>
        <Res Include = "Dialogs.fr.resources" >
            <Culture>fr</Culture>
        </Res>

        <CodeFiles Include="**\*.cs" Exclude="**\generated\*.cs" />
        <CodeFiles Include="..\..\Resources\Constants.cs" />
    </ItemGroup>
...
</Project>

In un file di progetto semplice si usa in genere un singolo ItemGroup elemento, ma è anche possibile usare più ItemGroup elementi. Quando vengono usati più ItemGroup elementi, gli elementi vengono combinati in un singolo ItemGroupoggetto . Ad esempio, alcuni elementi potrebbero essere inclusi da un elemento separato ItemGroup definito in un file importato.

ItemGroups può avere condizioni applicate usando l'attributo Condition . In tal caso, gli elementi vengono aggiunti all'elenco di elementi solo se la condizione viene soddisfatta. Vedere condizioni di MSBuild

L'attributo Label viene usato in alcuni sistemi di compilazione come modo per controllare i comportamenti di compilazione. È possibile usarlo solo nelle dichiarazioni, come modo per creare script MSBuild più comprensibili o come impostazione di controllo per influire sulle azioni di compilazione.

Vedi anche