Ich versuche ein MSBuild-Ziel zu erstellen, das eine bestimmte Datei in eine Liste von Verzeichnissen aufnehmen und dann diese Datei unter einem anderen Namen in dasselbe Verzeichnis kopieren soll. Der Name "Ziel" hängt direkt vom Verzeichnis ab.MSBuild Kopiertask + Stapelverarbeitung für Korrelationsmetadaten
Beginnen wir mit einem Beispiel illustrieren:
|-\Source\MySolution.ProjectFoo\
| -- App.config.tpl
| -- MySolution.ProjectFoo.exe
| -- (Target) MySolution.ProjectFoo.exe.config.tpl
|-\Source\MySolution.ProjectBar\
| -- App.config.tpl
| -- MySolution.ProjectBar.exe
| -- (Target) MySolution.ProjectBar.exe.config.tpl
Ich habe den Bau begann meine ItemGroup
wie folgt aus:
<ItemGroup>
<AppConfigTemplates Include="Source\**\App.config.tpl">
<Correlate>%(RecursiveDir)</Correlate>
</AppConfigTemplates>
<ExeFiles Include="Source*\**\*.exe">
<Correlate>%(RecursiveDir)</Correlate>
</ExeFiles>
</ItemGroup>
Ich hatte gehofft, in der Lage sein zu Charge auf der Correlate
Metadateneigenschaft. Etwas wie:
<Copy Batch="%(Correlate)" SourceFiles="%(AppConfigTemplates.FullPath)"
DestinationFiles="%(ExeFiles.FullPath).config.tpl" />
Wie kann ich das erreichen?
Das ist genau die Lösung, nach der ich suche! Vielen Dank! – MarioDS