ItemGroup, élément (MSBuild)
Contient un ensemble d’éléments Item définis par l’utilisateur. Chaque élément utilisé dans un projet MSBuild doit être spécifié en tant qu’enfant d’un élément ItemGroup
.
<Project><ItemGroup>
Syntaxe
<ItemGroup Condition="'String A' == 'String B'"
Label="Label">
<Item1>... </Item1>
<Item2>... </Item2>
</ItemGroup>
Attributs et éléments
Les sections suivantes décrivent des attributs, des éléments enfants et des éléments parents.
Attributs
Attribut | Description |
---|---|
Condition |
Attribut facultatif. Condition à évaluer. Pour plus d’informations, consultez l’article Conditions (Conditions MSBuild). |
Label |
Attribut facultatif. Identifie le ItemGroup . |
Éléments enfants
Élément | Description |
---|---|
Item | Définit les entrées du processus de génération. Un élément ItemGroup peut ne contenir aucun élément Item ou en contenir plusieurs. |
En plus de l’élément générique Item
, ItemGroup autorise les éléments enfants qui représentent des types d’éléments, tels que Reference
, ProjectReference
, Compile
et d’autres, comme répertoriés dans Éléments de projet MSBuild communs.
Éléments parents
Élément | Description |
---|---|
Projet | Élément racine obligatoire d’un fichier projet MSBuild. |
Cible | Depuis .NET Framework 3.5, l’élément ItemGroup peut apparaître dans un élément Target . Pour plus d’informations, consultez l’article Targets (Cibles MSBuild). |
Exemple
L’exemple de code suivant illustre les collections d’éléments définis par l’utilisateur Res
et CodeFiles
déclarés dans un élément ItemGroup
. Chacun des éléments de la collection d’éléments Res
contient un élément ItemMetadata enfant défini par l’utilisateur.
<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>
Dans un fichier projet simple, vous utilisez normalement un seul élément ItemGroup
, mais vous pouvez également utiliser plusieurs éléments ItemGroup
. Lorsque plusieurs éléments ItemGroup
sont utilisés, les éléments sont combinés en un seul ItemGroup
. Par exemple, certains éléments peuvent être inclus par un élément ItemGroup
distinct défini dans un fichier importé.
ItemGroups peut avoir des conditions appliquées à l’aide de l’attribut Condition
. Dans ce cas, les éléments sont ajoutés uniquement à la liste d’éléments si la condition est satisfaite. Consultez Conditions MSBuild
L’attribut Label
est utilisé dans certains systèmes de génération comme moyen de contrôler les comportements de génération. Vous pouvez l’utiliser uniquement dans les déclarations, comme moyen de créer des scripts MSBuild plus compréhensibles ou en tant que paramètre de contrôle pour affecter les actions de génération.