ItemGroup 요소(MSBuild)
사용자 정의 Item 요소 집합을 포함합니다. MSBuild 프로젝트에서 사용되는 모든 항목은 ItemGroup
요소의 자식으로 지정해야 합니다.
<Project><ItemGroup>
구문
<ItemGroup Condition="'String A' == 'String B'"
Label="Label">
<Item1>... </Item1>
<Item2>... </Item2>
</ItemGroup>
특성 및 요소
다음 단원에서는 특성, 자식 요소 및 부모 요소에 대해 설명합니다.
특성
특성 | 설명 |
---|---|
Condition |
선택적 특성입니다. 평가할 조건입니다. 자세한 내용은 조건을 참조하세요. |
Label |
선택적 특성입니다. ItemGroup 를 식별합니다. |
자식 요소
요소 | 설명 |
---|---|
항목 | 빌드 프로세스에 대한 입력을 정의합니다. ItemGroup 에는 0개 이상의 Item 요소가 있을 수 있습니다. |
제네릭 Item
요소 외에도 ItemGroup은 일반 MSBuild 프로젝트 항목에 나열된 항목 형식(예: Reference
, ProjectReference
, Compile
, 기타)을 나타내는 자식 요소를 허용합니다.
부모 요소
요소 | Description |
---|---|
프로젝트 | MSBuild 프로젝트 파일의 필수 루트 요소입니다. |
대상 | .NET Framework 3.5부터 ItemGroup 요소는 Target 요소 내에 표시될 수 있습니다. 자세한 내용은 대상을 참조하세요. |
예시
다음 코드 예제에서는 사용자 정의 항목 컬렉션 Res
및 ItemGroup
요소 내에 선언된 CodeFiles
를 보여 줍니다. Res
항목 컬렉션의 각 항목은 사용자 정의 자식 ItemMetadata 요소를 포함합니다.
<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>
간단한 프로젝트 파일에서는 일반적으로 단일 ItemGroup
요소를 사용하지만 여러 ItemGroup
요소를 사용할 수도 있습니다. 여러 ItemGroup
요소가 사용되는 경우 항목은 단일 ItemGroup
으로 결합됩니다. 예를 들어 일부 항목은 가져온 파일에 정의된 별도의 ItemGroup
요소에 포함될 수 있습니다.
ItemGroups에는 Condition
특성을 사용하여 적용되는 조건이 있을 수 있습니다. 이 경우 조건이 충족되는 경우에만 항목이 항목 목록에 추가됩니다. MSBuild 조건을 참조하세요.
Label
특성은 일부 빌드 시스템에서 빌드 동작을 제어하는 방법으로 사용됩니다. 이 특성은 선언에서만 더 이해하기 쉬운 MSBuild 스크립트를 만드는 방법 또는 빌드 작업에 영향을 주는 제어 설정으로 사용할 수 있습니다.