Ich versuche, eine Aufgabengruppe "Dateien" mit einem Metadatenattribut namens "TargetPath" zu erstellen, das den relativen Pfad zu einer Datei enthält.ItemGroup mit benutzerdefinierten Metadaten in Bezug auf Dateien
Beispiel:
Für diese Pfade:
D: \ Test \ Blah.exe
D: \ Test \ Config \ fun.config
D: \ Test \ en-US \ my .resources.dll
sollte die Ausgabe sein:
Datei Ziel = Blah.exe
Datei Ziel = Config \ fun.config
Datei Ziel = en-US \ my.resources.dll
Hier ist mein bester Versuch ... hoffentlich macht dies meine Frage deutlicher:
<ItemGroup>
<Files Include="d:\test\**\*" >
<TargetPath>%(RecursiveDir)%(Filename)%(Extension)</TargetPath>
</Files>
</ItemGroup>
<Message Text="File Target = @(Files->'%(TargetPath)')"/>
Ich möchte, dass "TargetPath" korrekt ausgefüllt wird ... derzeit scheint es null oder leer zu sein. Wer weiß, was ich vermisse?
Edit:
Ja, merke ich, kann ich dies tun:
<Message Text="File Target = @(Files->'%(RecursiveDir)%(Filename)%(Extension)')"/>
Allerdings bin ich dieses ItemGroup Aufbau der ResolveManifestFiles MSBuild-Aufgabe zu verwenden, die, dass ich aufbauen erfordert ein TaskItem mit dem TargetPath-Metadatenattribut, um diesen Wert anpassen zu können.
ich sehe, dass, aber ich versuche, eine andere Aufgabe zu verwenden, die ich übergeben, um es auf den Taskitems setzt diese Metadaten-Attribut zu haben –
Meine Antwort aktualisieren - hoffe es hilft. – KMoraz