VC PlusPlus:MSBuild ClearMetaData
概要
ClearMetaDataはアイテムグループの中に記述できる特別なキーワードのひとつです。メタデータを消して項目を返します。
<Project ...>
<ItemGroup>
<Text Include="doc\a.en.txt">
<LinkCompiled>True</LinkCompiled>
</Text>
<Text Include="doc\a.ja.txt">
<LinkCompiled>False</LinkCompiled>
</Text>
</ItemGroup>
<Target Name="MessageText" AfterTargets="Build">
<ItemGroup>
<TextFileDir Include="@(Text->'%(Identity)'->DirectoryName()->Distinct()->ClearMetaData())" />
</ItemGroup>
<Message Text="@ (Text) = {@(TextFileDir)}" />
</Target>
</Project>
出力結果
@ (Text) = {C:\Users\(UserID)\source\repos\(ProjectName)\doc}
Text->'%(Identity)'->DirectoryName()->Distinct()のメタデータは消去されます。