Für ein MSBuild-Projekt möchte ich eine Art .config
-Datei ausgeben, die entlang der generierten Binärdatei neu verteilt werden würde, so dass die zum Zeitpunkt der Erstellung verwendeten Parameter sein können von den Benutzern der Binärdatei programmgesteuert überprüft.Schreiben Sie Eigenschaften (Name = Wert) in eine Datei von einem MSBuild-Projekt
Ausgabedateiformat:
PropertyName1=ValueA
PropertyName2=ValueB
...
Idealerweise würde die Liste der Eigenschaften schreiben enthalten ihre Namen nur. Vielleicht mag:
<ItemGroup>
<MyExposedDictionary Include="Configuration" />
<MyExposedDictionary Include="Platform" />
<MyExposedDictionary Include="PropertyName1" />
...
</ItemGroup>
Mit MyExposedDictionary
das Argument ist zu einem gewissen DotConfigFileWriter
Aufgabe zu geben, sowie der Pfad der Zieldatei.
fand ich several ways zu write down values in eine Datei, darunter ein Teilziel mit einigen C# code in it, aber ich bin neu in MSBuild und ich bin nicht sicher, wie ich diese Anforderungen in einer einzigen Target
verschmelzen können, um es re- verwendbar.
Das Schreiben in eine Datei ist einfach, aber das andere Problem besteht darin, 'den Namen einer Eigenschaft als String anzugeben, wie man ihren Wert erhält'. Was leider schwer, wenn nicht unmöglich ist; Suche nach z.B. 'msbuild benutzerdefinierte Aufgabe erhalten Eigenschaft' dann z. http://stackoverflow.com/questions/10474990/how-do-i-access-current-project-context-within-a-custom-task. Wenn Sie jedoch bereit sind, einige Duplikate hinzuzufügen, können Sie einfach folgendes verwenden: (oder erstellen Sie zuerst eine Elementgruppe) mit Zeilen, dann schreibe es in Datei) –
stijn
@stijn das ist eine wertvolle Eingabe, danke – polyvertex