Wie füge ich Dateien im Transformationsprozess von web.config hinzu?

77

Ich habe eine Website in Visual Studio 2012 entwickelt. Die Datei web.config enthält derzeit die folgenden Dateien in ihrer Umwandlung: - web.Debug.config - web.Release.config

Ich habe kürzlich eine neue Build-Konfiguration (mit dem Namen "Staging") in mein Projekt aufgenommen. Wie kann ich eine Transformationsdatei "web.Staging.config" erstellen?

Nirman
quelle

Antworten:

126

Es gibt zwei Möglichkeiten, wie die web.config-Transformationsdateien in VS generiert werden können:

  1. Wenn Sie ein Webanwendungsprojekt haben, klicken Sie mit der rechten Maustaste auf web.config und wählen Sie Config Transform hinzufügen. Dadurch werden alle Konfigurationstransformationen hinzugefügt, die in Ihrem Projekt aufgrund von Buildkonfigurationen fehlen (dh wenn Sie Produktions- und Staging-Buildkonfigurationen haben, wird beiden eine Transformation hinzugefügt).
    • Diese Methode wird für Website-Projekte nicht unterstützt, da sie nicht mehrere Build-Konfigurationen unterstützen.
  2. Klicken Sie in einem der Webprojekttypen mit der rechten Maustaste auf ein Veröffentlichungsprofil (.pubxml) und wählen Sie "Konfigurationstransformation hinzufügen" . Dadurch wird nur für dieses Profil eine neue Konfigurationstransformation hinzugefügt.
    • Dies erfordert VS2012 Update 2 oder das Azure SDK 2.0 für VS2010 ( glaube ich ).
    • In einem Website-Projekt wird die neue Transformationsdatei nicht unter web.config verschachtelt, da VS dieses Verhalten nicht unterstützt. Suchen Sie einfach im Stammordner danach.
Jimmy
quelle
4
Suchen Sie in einem Website-Projekttyp die .pubxml im Unterverzeichnis / App_Data / PublishProfiles /. VS2012 erstellt dies, wenn Sie ein Projekt zum Veröffentlichen einer Website einrichten (indem Sie im Projektmappen-Explorer mit der rechten Maustaste auf die Website klicken).
Subsci
Siehe diese Anweisungen zum Erstellen eines Profils. Sie müssen am Ende des Assistenten nicht auf die Schaltfläche "Veröffentlichen" klicken, wenn Sie die Anwendung manuell veröffentlichen. stackoverflow.com/questions/13441692/…
MacGyver
1
Siehe Spadelives Antwort, wenn Sie mit der rechten Maustaste klicken, aber nicht "Add Config Transform" als Option sehen
Tom Gerken
7
Wenn Sie mit der rechten Maustaste auf web.config klicken, wird kein Befehl zum Hinzufügen einer Konfigurationstransformation angezeigt .
Jonathan Wood
41

IN VS 2012:

  1. Gehen Sie zu Build-> Configuration Manager
  2. Klicken Sie auf die Konfiguration der aktiven Lösungen und wählen Sie "Neu".
  3. Geben Sie den Namen Ihrer neuen Konfiguration ein und klicken Sie auf Speichern.
  4. Klicken Sie mit der rechten Maustaste auf Ihre Web.config-Datei und wählen Sie Add Config Transform.

Ihre neue Transformationsdatei wird automatisch erstellt.

spadelives
quelle
3
Wenn ich mit der rechten Maustaste auf web.config klicke, wird keine solche Option angezeigt .
Jonathan Wood
3
Jahre später weiß ich es, aber Sie werden diese Option nicht sehen, wenn Sie bereits eine Webkonfigurationsumwandlung für alle vorhandenen Build-Konfigurationen haben - dh wenn Sie Debug- und Realease-Build-Konfigurationen haben und bereits Web.Debug.config und Web haben .Release.config transformiert, Sie werden die Option nicht sehen - Sie müssten eine neue Build-Konfiguration hinzufügen , daher die Anweisung in der obigen Antwort!
Breeno
Dieses Problem trat auf, wenn ein neues Projekt zu einer Lösung mit anderen Konfigurationen hinzugefügt wurde. Schließlich wurde mir klar, dass das Profil in meinem Projekt nicht vorhanden war, nur auf Lösungsebene und innerhalb der alten vorhandenen Projekte. Daher müssen Sie möglicherweise überprüfen, ob Ihr Projekt beim Hinzufügen nicht standardmäßig eine andere Konfiguration verwendet.
Brandon Barkley
Einzige Sache, die bei mir funktioniert hat, danke! Ich benutze Visual Studio 2017.
Niveditha Karmegam
5

Sie müssen zuerst die Erweiterung " Konfiguration konfigurieren" [ Erweiterungen -> Erweiterungen verwalten -> Online- Abschnitt] installieren , um die Option anzuzeigen, wenn Sie mit der rechten Maustaste auf Ihre web.{environment}.configDateien klicken .

Seidenfeuer
quelle
2
Diese Antwort hat mir tatsächlich geholfen! Danke vielmals! Ich verwende VS2019, Community Ed.
Giorgos Betsos