ist es möglich, die Verbindungszeichenfolge in meiner web.config automatisch zu ändern, wenn der Buildtyp mit Nant veröffentlicht wird? Wenn das so ist, wie? dankeWie ändert man die Verbindungszeichenfolge automatisch beim Erstellen mit Nant
Antwort
Ich denke, Sie könnten die Xmlpoke Aufgabe verwenden. Zum Beispiel, wenn Ihre web.config ist
Dann könnten Sie eine Aufgabe zu Ihrer Build-Datei wie folgt hinzufügen.
<xmlpoke
file="path_to_your_web_root\Web.config"
xpath="/configuration/connectionStrings/add[@name='myDb']/@connectionString"
value="your_connection_string" />
Oh, hier ist die Dokumentation der xmlpoke Aufgabe. http://nant.sourceforge.net/release/latest/help/tasks/xmlpoke.html
Ich nehme an, dass Sie dies tun möchten, damit die Verbindungszeichenfolge auf eine Produktionsumgebung und nicht auf eine Entwicklungs- oder Testumgebung verweist, wenn Nant den Freigabecode erstellt. Normalerweise habe ich einen anderen Ansatz, um dieses Szenario zu lösen. behalte die Verbindungszeichenfolgen in einer separaten Datei. Sie können dies tun, indem Sie das configSource
Attribut:
<!-- point out a file containing the connectionStrings config section -->
<connectionStrings configSource="connections.config"></connectionStrings>
Die connections.config
Datei soll wie folgt aussehen:
<?xml version="1.0"?>
<connectionStrings>
<add name="myDb" connectionString="{your connection string}"/>
</connectionStrings>
Da die Verbindungszeichenfolgen selten in der Produktionsumgebung ändern, um die Datei connections.config
kann dann in der Regel von der Bereitstellung ausgeschlossen werden.
Nant Documentation beschrieben Gibt es eine ähnliche Art und Weise Datenbank/Datenquelle/Connection in sqlmap.config zu setzen? – sinsedrix
Ich verwende einen einfachen Weg. Ich habe viele Versionen der Konfigurationsdatei vorbereitet, die jeweils eigene Verbindungszeichenfolgen enthalten (DEV, TEST, PRODUCTION). Wenn ich im NANT-Skript verschiedene Ziele erstelle, kopiere ich die spezifische Konfigurationsdatei, um die Standardkonfiguration zu überschreiben.
Eine andere Alternative besteht darin, eine Vorlage zu verwenden, bei der anstelle der Verbindungszeichenfolge ein Token verwendet wird, z.
<connectionString>
<add name="myDb" connectionString="@[email protected]" />
</connectionStrings>
Verwenden Sie dann Filterketten, um dies durch die entsprechende Zeichenfolge zu ersetzen.
<copy file="Web.config.template" tofile="Web.config" overwrite="true">
<filterchain>
<replacetokens>
<token key="CONNECTION_STRING" value="${ConnectionString}" />
</replacetokens>
</filterchain>
</copy>
Der Wert der ConnectionString-Eigenschaft hängt vom Buildtyp ab.
Filterchains sind in der
Wunderbar einfache Erweiterungslösung. –
- 1. Wie ändert man die Quelle mit NAnt?
- 2. Verzeichnis erstellen mit Nant
- 3. Wie man die Knopfnamen beim Klicken ändert
- 4. Erstellen einer Klassenbibliothek mit Nant
- 5. Wie ändert man die Größe von Kakao xcode automatisch?
- 6. MembershipProvider ändert die Verbindungszeichenfolge im Code
- 7. Wie man die Größe von JFrame nach Inhalt automatisch ändert
- 8. Verwenden Sie nant, um eine benutzerdefinierte nant Aufgabe zu erstellen
- 9. Wie ändert man die "html" -Elemente CSS
- 10. Erstellen von .NET 4-Projekten mit Nant
- 11. Erstellen von .NET 4.5-Projekten mit Nant
- 12. Eine WPF-App mit NAnt erstellen
- 13. Wie ändert man die Opazität mit ngstyle?
- 14. Wie ändert man die Platzhalterfarbe mit css3?
- 15. Wie man die Größe automatisch verändert und die Formulareinstellungen mit der Änderung der Auflösung ändert
- 16. Wie ändert man die Größe von Schaltflächen automatisch, wenn das Fenster seine Größe ändert?
- 17. Wie man versionName in Manifest während des Build automatisch ändert?
- 18. Wie ändert man die Pfeilspitze?
- 19. Wie ändert man die Verbindungszeichenfolge von SubSonic 3 im laufenden Betrieb?
- 20. Wie ändert man die Textverschlüsselung des DataContractSerializers?
- 21. jquery ui draggable ändert die Breite automatisch
- 22. Unterzeichnen einer Baugruppe mit Nant
- 23. Wie kann ich eine Textansicht erstellen, die automatisch die Schriftgröße an den Platz ändert?
- 24. Wie erstellt man automatisch neuen Produktcode beim Build mit InstallShield?
- 25. Wie ändert man den Eclipse-Einrückungsstil für automatisch generierten Code?
- 26. Disable qt Creator automatisch beim Debuggen erstellen
- 27. Android ViewPager ändert automatisch die Seite
- 28. Wie ändert man die Bandhöhe dynamisch?
- 29. Wie ändert man Speicherinhalte mit GDB?
- 30. Wie man NUnit v2.4.8 Tests mit NAnt 0.86 Beta durchführt?
Es scheint nicht zu funktionieren, wenn ConnectionString Leerzeichen enthalten :( – sinsedrix