Kann NuGet Bearbeiten einer config-Datei oder nur, um es hinzuzufügen?
Habe ich gearbeitet, auf ein NuGet-Paket für meine Firma und eine der Anforderungen ist in der Lage, zu aktualisieren, einige unserer config-Dateien.
Ich weiß, es ist möglich, hinzufügen einer config-Datei, aber es ist möglich, zu Bearbeiten?
Beispiel:
<add name="conn" connectionString="Data Source=.\;Initial Catalog=DB;Integrated Security=True" />
änderungen unter
<add name="conn" connectionString="Data Source=.\;Initial Catalog=DB;User ID=ex;Password=example" />
Du musst angemeldet sein, um einen Kommentar abzugeben.
Als von NuGet 2.6 und höher, können Sie sogar verwandeln Sie Web.config-Dateien unter Verwendung der XDT-syntax, die verwendet wird, für das Web.config-Transformationen in Visual studio.
Sehen http://docs.nuget.org/docs/creating-packages/configuration-file-and-source-code-transformations:
Unterstützung für XML-Document-Transform (XDT)
Beginnend mit NuGet-2.6, XDT unterstützt wird zum transformieren von XML-Dateien in einem Projekt. Die XDT-syntax genutzt werden kann, in der .installieren.xdt und .deinstallieren.xdt Datei(en) unter dem Paket "Content", die angewendet wird, während der Paket-installation und deinstallation Zeit, beziehungsweise.
Beispielsweise zum hinzufügen MyNuModule web.config-Datei wie oben dargestellt, im folgenden Abschnitt verwendet werden kann, im web.config.installieren.xdt-Datei:
Auf der anderen Seite zu entfernen, nur die MyNuModule element während der Paket-deinstallation, den folgenden Abschnitt verwendet werden kann, im web.config.deinstallieren.xdt-Datei:
NuGet-Transformationen können nicht Bearbeiten Sie vorhandene Werte. Aber NuGet erlaubt die Ausführung von Powershell-Skripten auf package installieren, so dass Sie können Bearbeiten Sie die config-Datei so.
Erstellen einer Installation.ps1-Datei und verwenden Sie diesen code:
EDIT: Die Antwort ist jetzt JA als der NUGET-2.6 und höher.
Die Antwort ist KEIN. Aus dem nuget-Website fand ich die folgende Antwort:"Wenn NuGet führt eine transform-Datei in ein Projekt Konfiguration Datei, es fügt nur Elemente oder Attribute Hinzugefügt, bestehende Elemente in der Konfigurationsdatei; es ändert nicht bestehende Elemente oder Attribute in irgendeiner anderen Weise."
http://docs.nuget.org/docs/creating-packages/configuration-file-and-source-code-transformationsJa, es ist möglich, aber Sie müssen installieren.ps1 Datei in tools Ordner. Und dann, wenn Sie erhalten Ihr Paket von nuget-server, visual studio ausführen von Powershell-Skripts.
Ich benutze dieses Skript