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.

上記のパラメーター以外に、このタスクは TaskExtension クラスからパラメーターを継承します。このクラス自体は、Task クラスから継承されます。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 項目コレクションに含まれる項目が 1 つになります。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 (タスク リファレンス) Task Reference
MSBuild の概念 MSBuild Concepts
タスクTasks