RemoveDuplicates 작업RemoveDuplicates Task

지정된 항목 컬렉션에서 중복된 항목을 제거합니다.Removes duplicate items from the specified item collection.

매개 변수Parameters

다음 표에서는 RemoveDuplicates 작업의 매개 변수에 대해 설명합니다.The following table describes the parameters of the RemoveDuplicates task.

매개 변수Parameter 설명Description
Filtered 선택적 ITaskItem[] 출력 매개 변수입니다.Optional ITaskItem[] output parameter.

모든 중복 항목이 제거된 항목 컬렉션을 포함합니다.Contains an item collection with all duplicate items removed. 입력 항목의 순서는 보존되므로 각 중복 항목의 첫 번째 인스턴스를 유지합니다.The order of the input items is preserved, keeping the first instance of each duplicate item.
Inputs 선택적 ITaskItem[] 매개 변수입니다.Optional ITaskItem[] parameter.

중복 항목을 제거할 항목 컬렉션입니다.The item collection to remove duplicate items from.

설명Remarks

이 작업은 대/소문자를 구분하지 않으며 중복 항목을 결정할 때 항목 메타데이터를 비교하지 않습니다.This task is case insensitive and does not compare item metadata when determining duplicates.

이 작업은 위에 나와 있는 매개 변수 외에 Task 클래스에서 직접 상속하는 TaskExtension 클래스의 매개 변수도 상속합니다.In addition to the parameters listed above, this task inherits parameters from the TaskExtension class, which itself inherits from the Task class. 이러한 추가 매개 변수 및 해당 설명이 포함된 목록은 TaskExtension Base Class를 참조하세요.For a list of these additional parameters and their descriptions, see TaskExtension Base Class.

Example

다음 예제는 RemoveDuplicates 작업을 사용하여 MyItems 항목 컬렉션에서 중복 항목을 제거합니다.The following example uses the RemoveDuplicates task to remove duplicate items from the MyItems item collection. 작업이 완료될 때 FilteredItems 항목 컬렉션은 하나의 항목을 포함합니다.When the task is complete, the FilteredItems item collection contains one item.

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">  

    <ItemGroup>  
        <MyItems Include="MyFile.cs"/>  
        <MyItems Include="MyFile.cs">  
            <Culture>fr</Culture>  
        </MyItems>  
        <MyItems Include="myfile.cs"/>  
    </ItemGroup>  

    <Target Name="RemoveDuplicateItems">  
        <RemoveDuplicates  
            Inputs="@(MyItems)">  
            <Output  
                TaskParameter="Filtered"  
                ItemName="FilteredItems"/>  
        </RemoveDuplicates>  
    </Target>  
</Project>  

다음 예제는 RemoveDuplicates 작업에서 입력 순서가 보존됨을 보여줍니다.The following example shows that the RemoveDuplicates task preserves its input order. 작업이 완료되면 FilteredItems 항목 컬렉션에 “MyFile2.cs”, “MyFile1.cs” 및 “MyFile3.cs” 항목이 순서대로 포함됩니다.When the task is complete, the FilteredItems item collection contains the items "MyFile2.cs", "MyFile1.cs", and "MyFile3.cs" in that order.

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">  

    <ItemGroup>  
        <MyItems Include="MyFile2.cs"/>  
        <MyItems Include="MyFile1.cs" />  
        <MyItems Include="MyFile3.cs" />  
        <MyItems Include="myfile1.cs"/>  
    </ItemGroup>  

    <Target Name="RemoveDuplicateItems">  
        <RemoveDuplicates  
            Inputs="@(MyItems)">  
            <Output  
                TaskParameter="Filtered"  
                ItemName="FilteredItems"/>  
        </RemoveDuplicates>  
    </Target>  
</Project>  

참고 항목See Also

작업 참조 Task Reference
MSBuild 개념 MSBuild Concepts
작업Tasks