2009-05-07 7 views
1

Ich arbeite an einem Webprojekt als Website und nicht an einer Webanwendung. Wie kann ich eine andere Konfigurationsdatei verwenden, abhängig davon, wo sie gehostet wird, so verwendet die lokale Version meine lokale SQL-Installation, aber die veröffentlichte Version verwendet die Live-Datenbank? z.B. connectionStrings.config ignoriert (nicht veröffentlicht), connectionStrings.live.config veröffentlicht als connectionStrings.configSo veröffentlichen Sie eine ASP.NET-Website mit alternativen Konfigurationseinstellungen

Ich sehe eine Option Policy-Datei, wäre das etwas in der Lage, dies zu tun?

Antwort

3

Hierfür gibt es mehrere Möglichkeiten. Am einfachsten ist es, ein Web-Deployment-Projekt zu verwenden. Die ScottGu post geht darauf näher ein.

Für größere Projekte benötigen Sie etwas wie Nant oder MSBuild und CruiseControl oder TeamBuild.

Ich stellte auch something hier vor einiger Zeit auf die Unterstützung komplexer Konfigurations Implementierungen

1

Post-Build-Event, die die Config über tauscht?

Sie können je nach Build-Konfiguration ein anderes Post-Build-Ereignis haben, jedes kann bei Bedarf eine andere Konfiguration kopieren.

+0

keine Post Buildereignis Option sehen können, wie ich als Website-Projekt öffnen nur, z.B. 'datei'> 'öffnen'> 'website' – SamWM

+0

Ich denke, Saint bezieht sich auf Entwicklung und Produktion. Standardmäßig sollte config auf dev zeigen und dann ändern, wenn Sie in der Produktion bereitstellen (vorausgesetzt, Sie implementieren vorinstallierten Code) –

+0

Ahh Entschuldigung, dass Sie an einem Website-Projekt arbeiten, leider sind dies die einzigen Projekttypen (welche Builds) habe ein Pre-Post-Build-Event. –

3

Verwenden Sie ein MSBuild- oder NAnt-Skript für verschiedene Builds.

+0

+1 für Nant und/oder MSBuild. Funktioniert hervorragend zusammen mit Web-Deployment-Projekten. – JamesEggers

2

Sie können ein Web Deployment-Projekt verwenden. Schauen Sie sich ScottGu blog post.

+0

Wie wäre es mit Visual Studio 2005? – SamWM

+0

Web-Bereitstellungsprojekte gab es auch für VS2005 – NotMe

Verwandte Themen