2012-10-23 19 views
8

Auf der Suche nach Hilfe von jemandem, der mit SlowCheetah gearbeitet hat, um Konfigurationsdateien unter einem Webprojekt zu transformieren. Wir stellen fest, dass partielle Konfigurationsdateien, auf die von web.config verwiesen wird, nicht transformiert werden.Können partielle Konfigurationsdateien, die über configSource mit einer web.config verknüpft sind, in ein Webprojekt umgewandelt werden?

Zum Beispiel haben wir Hinweise auf partielle configs AppSettings.config und ConnectionsString.config in der web.config wie so enthalten:

</system.web> 
    <connectionStrings configSource ="ConnectionsString.config"></connectionStrings> 
    <appSettings configSource ="AppSettings.config"></appSettings> 
</configuration> 

und dann in der AppSettings.config haben wir genau den AppSettings Abschnitt so wie:

<appSettings> 
    <add key="LostPasswordBCC" value="[email protected]" /> 
</appSettings> 

und schließlich in der Datei AppSettings.Debug.config verwandeln wir haben einige Ergänzungen:

<?xml version="1.0" encoding="utf-8" ?> 
<!-- For more information on using transformations 
    see the web.config examples at http://go.microsoft.com/fwlink/?LinkId=214134. --> 
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 
    <appSettings > 
    <add key="Release" value="Something" xdt:Transform="Insert" /> 
    </appSettings> 
</configuration> 

Offensichtlich ist das Obige nur ein Test, um die Umwandlung zu sehen, aber was wir finden, ist, dass beim Versuch, eine Vorschau der Transformation zu sehen, wir einen Fehler zurückbekommen "Es gab einen Fehler bei der Verarbeitung der Transformation." Der Veröffentlichungsversuch schlägt ebenfalls fehl.

Wenn wir die Konfigurationsdateien vollständig formatiert und von web.config nicht referenziert haben, scheint die Umwandlung gut zu funktionieren - aber wir wollten diese Dateien für mehrere Projekte freigeben.

Weiß jemand, ob es eine Problemumgehung gibt, wo wir beide Teilkonfigurationen aus der web.config verweisen können und auch diese partiellen Dateien transformiert haben? Wir beschäftigen uns mit Legacy-Code mit einer großen Anzahl von Konfigurationsdateien über mehrere Webprojekte hinweg, die versucht haben, zu konsolidieren. Daher müssen wir von der Web-Konfiguration zur Trennung von gemeinsam genutzten Dateien verlinken.

+0

Wären Sie in der Lage, ein Beispielprojekt zu liefern, das ich mir ansehen könnte? –

+0

Ja, ich kann den gesamten Inhalt des Testprojekts zippen, es sind nur etwa 2 MB. Was ist der beste Weg, um Ihnen eine Kopie zu senden? –

+0

Sie können mir eine E-Mail schicken sayedha (at) microsoftDOTcom –

Antwort

4

Problem wurde gelöst, stellt sich heraus nach Hilfe von Sayed, wir festgestellt, dass in unseren Bemühungen, den Konfig-Transformationsprozess mit einem Web-Projekt zu verstehen hatten wir das Format der Transformations-Konfigurationsdatei beschädigt. Mit frisch erstellten Konfigurationsdateien konnten wir Transformationen mit SlowCheetah zur Arbeit bringen.

Dies ermöglichte es uns, das eigentliche Problem zu lösen, das wir brauchen, um Projektkonfigurationen anders als web.config mit den Veröffentlichungsprofilen von Visual Studio 2012 zu transformieren. Das hat ursprünglich nicht funktioniert, aber Sayed hat uns wieder geholfen und eine neue Kopie von SlowCheetah zur Verfügung gestellt, die das funktioniert hat.

Unten finden Sie ein Link auf die neue Version von SlowCheetah mit der fix: https://github.com/sayedihashimi/slow-cheetah/issues/46

Vielen Dank für Ihre Zeit und Geduld Sayed.