RemoveDuplicates Task

Removes duplicate items from the specified item collection.

Parameters

The following table describes the parameters of the RemoveDuplicates task.

Parameter

Description

Filtered

Optional ITaskItem[] output parameter.

Contains an item collection with all duplicate items removed.

Inputs

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.

In addition to the parameters listed above, this task inherits parameters from the TaskExtension class, which itself inherits from the Task class. For a list of these additional parameters and their descriptions, see TaskExtension Base Class.

Example

The following example uses the RemoveDuplicates task to remove duplicate items from the MyItems item collection. When the task is complete, the FilteredItems item collection contains one item.

<Project xmlns="https://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>

See Also

Concepts

MSBuild Tasks

Other Resources

MSBuild Task Reference

MSBuild Concepts