2012-05-25 6 views
9

Ich möchte ein Datum haben, an dem eine Anwendung in meiner Web.Config bereitgestellt/veröffentlicht wurde.Einfügen von DateTime.Now in eine Web.Config während der Veröffentlichung/Bereitstellung

Gibt es eine Möglichkeit, dies mit web.config-Transformationen zu erreichen?

Mit xdt:Transform="Replace" kann ich jeden Knoten mit vordefinierten Wert ersetzen, aber gibt es eine Möglichkeit, eine benutzerdefinierte Funktion zu verwenden, um diesen Wert zu berechnen (wie DateTime.Now)?

+1

überprüfen Sie, ob es sich um ein Duplikat http://StackOverflow.com/questions/6827978/How-to-Replace-a-web-config-setting-with-the-current-date-while-using-webdeploy –

+0

danke , in meinem speziellen Fall ist es eine Art Duplikat .. und die Antwort über die Bereitstellung eines leeren Felds und das Ausfüllen beim ersten Start scheint in Ordnung zu sein. Aber vielleicht gibt es eine andere Lösung mit Config-Transformationen :) – Shaddix

Antwort

1

Ich glaube nicht, dass Sie dies mit den Konfigurations-Transformationen tun können (obwohl ich nicht 100% sicher bin).

Ich würde vorschlagen, die MSBuild Extension Pack, der zu einer DateAndTime Aufgabe enthält das aktuelle Datum und eine Detokenise Aufgabe auszuführen Token Ersatz für eine Datei zu erhalten.

Sie könnten dann entweder:

  1. bearbeitet Ihre Website csproj Datei entfernen Sie die Kommentare um das Afterbuild Ziel, und platzieren Sie Ihre Aufgaben dort
  2. einen separaten MSBuild-Skript schreiben und ausführen, dass nach Ihrer Website baut .

Hoffe, dass hilft.

Verwandte Themen