2016-05-27 4 views
1

Ich verwende Visual Studio Team Services, zuvor Visual Studio Online, um meine Web-App kontinuierlich bereitzustellen. Ich habe versucht, die web.config-Umwandlung einzurichten, ich glaube, es funktioniert, nachdem ich die Konfigurationseinstellungen auf Release | geändert habe Jede CPU wie hier beschrieben Web config transforms not working with Visual Studio online, VS2013 and Azure.Das connectionStrings-Element für die kontinuierliche Bereitstellung in Visual Studio Team Services ersetzen

Die Frage, die ich glaube, ist mehr mit der Transformation sein Selbst.

Im Moment habe ich folgendes in meinem web.config

<connectionStrings configSource="connections.config"/>

Ich möchte dies, so kann ich in connections.config Überprüfung vermeiden und immer noch lokal meine DB-Verbindungen eingerichtet haben. Ich möchte die obige Codezeile durch etwas ähnliches ersetzen.

<connectionStrings> 
    <add name="umbracoDB" connectionString="blah " providerName="System.Data.SqlClient" /> 
    <add name="EFdb" connectionString="blah" providerName="System.Data.EntityClient" /> 
</connectionStrings> 

Ich bin mit

<connectionStrings configSource="connections.config" xdt:Transform="Remove" xdt:Locator="Match(configSource)"/> und es scheint erfolgreich das configSource connection Element entfernt werden. Aber ich bin immer noch verwirrt darüber, wie ich meine Ersatz-ConnectionStrings hinzufügen und Elemente hinzufügen?

Devin

Antwort

1

Wenn Sie Ihre connection Element während des Einsatzes zu ersetzen, versuchen die usign ersetzen verwandeln:

<connectionStrings xdt:Transform="Replace"> 
    <add name="umbracoDB" connectionString="blah " providerName="System.Data.SqlClient" /> 
    <add name="EFdb" connectionString="blah" providerName="System.Data.EntityClient" /> 
</connectionStrings> 
+0

Ehrfürchtig, das hat perfekt funktioniert, jetzt kann ich meine Azure-Verbindungszeichenfolgen zum Überschreiben verwenden und meine Verbindungszeichenfolgen außerhalb der Quellcodeverwaltung behalten. Vielen Dank! –

2

Eine Sache, die Sie tun können, Ihre DB-Verbindungszeichenfolgen als geheime Variablen zu speichern, ist in Build/Release und verwenden Sie dann die Aufgabe Tokenizer vom Marktplatz , um das Verbindungszeichenfolge-Token durch die tatsächliche Zeichenfolge zu ersetzen.

Tokenizer-Task unterstützt die Umgebungen in Release Management.

+1

Warum nicht einfach die in Azure integrierte Funktionalität für Verbindungszeichenfolgen verwenden? –

+0

Definitiv, wenn Sie das nutzen können. Ich war/bin mir dessen nicht bewusst, so erwähnte ich eine generische Lösung, die auch dann funktioniert, wenn sie nicht Azure ist. –

Verwandte Themen