2017-05-06 3 views
1

Ich habe ein paar *.csproj (neues Format) in einem Ordner ("gleiche" Projekt, andere Builds - nein, es funktioniert nicht mit einzelnen) und ich brauche app.config Datei mit bindingRedirect für einige Projekte. Gibt es eine Möglichkeit, eindeutige app.config Namen pro Projekt zu haben, wie es für d. H. packages.config mit packages.<project name>.config möglich war?Verschiedene app.configs für verschiedene Projekte im selben Ordner

Die einzige, ziemlich lahme Lösung, die ich mir als Workaround vorstellen kann, ist eine Pre-Build- und Post-Build-Aufgabe, um die Datei dorthin zu bringen und sie zu entfernen und sicherzustellen, dass zwei Builds zusammen laufen.

+0

integrieren möchten Ich bin nicht sicher, was du meinst genau mit * haben verschiedene app.config Namen * (verschiedene Dateien vielleicht?), Aber wenn Sie setzen die '$ (AppConfig) 'Eigenschaft, die es als Dateiname anstelle der Standarddatei app.config verwendet. So könnten Sie z.B. setze es auf 'app. $ (MSBuildProjectName) .config'. Nochmal nicht 100% sicher, ob das was du willst? (Nebenbemerkung zum 'selben Projekt, verschiedenen Builds': es gibt fast immer einen Weg, um das zu erreichen, aber ich habe * viele * Fälle gesehen, in denen dieser Weg nicht nur wegen mangelndem Msbuild-Wissen gefunden wurde - nicht zu sagen, dies ist der Fall hier, aber nur FYI) – stijn

+0

Ehrfürchtig. Genau das brauche ich. Ich habe die '$ (AppConfig)' Eigenschaft komplett verpasst. Wenn Sie dies als Antwort hinzufügen, werde ich es sofort akzeptieren. –

Antwort

3

Wenn Sie die Build-Ausgabe betrachten, sehen Sie ein Ziel namens _CopyAppConfigFile, das sich um das Kopieren der Konfigurationsdatei kümmert. Wenn Sie weiter in Microsoft.Common.CurrentVersion.targets nachsehen, sieht man, dass msbuild standardmäßig app.config verwendet, und dies kann überschrieben werden, indem eine Eigenschaft AppConfig deklariert wird. Also, wenn Sie den Namen des Projekts in diesem Gebrauch

<PropertyGroup> 
    <AppConfig>app.$(MSBuildProjectName).config</AppConfig> 
</PropertyGroup> 
Verwandte Themen