항목 함수
MSBuild 4.0부터는 작업 및 대상의 코드가 항목 함수를 호출하여 프로젝트에 있는 항목에 대한 정보를 가져올 수 있습니다. 이러한 함수를 사용하면 Distinct() 항목을 간단하게 가져올 수 있으며, 항목에 대해 루프를 수행하는 것보다 속도가 빠릅니다.
문자열 함수
프로젝트가 한 항목에서 모든 FX 문자열 속성 메서드를 호출할 수 있습니다. 다중 문자열을 포함하는 항목의 경우 함수가 각 문자열에서 실행됩니다. 예를 들면 다음과 같습니다.
<x Include="a;b;cccc"/>
<z Include="@(x->get_Length())"/>
z: 1;1;4 반환
기타 함수
아래 표에서는 항목에 사용할 수 있는 내장 함수를 보여 줍니다. 이러한 함수 외에도
Function |
예제 |
설명 |
---|---|---|
[DirectoryName] |
|
[itemsOfType]에서 항목의 [DirectoryName]을 반환합니다. |
[Metadata] |
|
[argument[0]]에 지정된 메타데이터의 콘텐츠를 반환합니다. |
[DistinctWithCase] |
|
[itemsOfType]에서 [Tuple]의 고유한 [Item1] 값을 갖는 항목을 반환합니다. 비교 시 대/소문자가 구분됩니다. |
[Distinct] |
|
[itemsOfType]에서 [Tuple]의 고유한 [Item1] 값을 갖는 항목을 반환합니다. 비교 시 대/소문자는 구분되지 않습니다. |
[DistinctWithComparer] |
|
[itemsOfType]에서 [Tuple]의 고유한 [Item1] 값을 갖는 항목을 반환하는 내장 함수입니다. 비교 시 대/소문자는 구분되지 않습니다. |
[ExpandQuotedExpressionFunction] |
|
%(Trans) in @(Compile->'%(Trans)') 같은 식을 변환하는 내장 함수입니다. |
[ClearMetadata] |
|
[itemsOfType]에서 해당 메타데이터가 지워진 항목, 즉 [itemspec]만 유지되는 항목을 반환합니다. |
[WithMetadataValue] |
|
지정된 메타데이터가 있는 항목을 반환합니다. 비교 시 대/소문자는 구분되지 않습니다. |
[AnyHaveMetadataValue] |
|
지정된 메타데이터가 있는 항목이 있는지를 나타내는 boolean을 반환합니다. 비교 시 대/소문자는 구분되지 않습니다. |