2011-01-03 3 views
1

Es gibt eine ASP.NET-Anwendung. Es wird auf ein .NET-Projekt verwiesen, das einen Webverweis auf einen asmx-Webdienst hat (z. B. MyApp.Utility).Anwendungseinstellungen in web.config neu definieren

Die URL zum Webservice wird in den Anwendungseinstellungen gespeichert. Es gibt einen solchen Abschnitt in app.config für das MyApp.Utility-Projekt.

<applicationSettings> 
    <MyApp.Utility.My.MySettings> 
     <setting name="MyApp_Utility_ExternalServices_SomeService" serializeAs="String"> 
      <value>http://localhost:17455/ExternalServices/SomeService.asmx</value> 
     </setting> 
    </MyApp.Utility.My.MySettings> 
</applicationSettings> 

Ich möchte diese URL in web.config für meine ASP.NET-Anwendung ändern. Kann ich die Anwendungseinstellungen von MyApp.Utility neu definieren, ohne den Code neu zu kompilieren?

Antwort

1

ja, Sie haben Zeug in .config-Dateien genau, so dass Sie nicht neu kompilieren müssen, um Sachen zu ändern.

Je nachdem, welche Art von App und Setup Sie haben, müssen Sie die Anwendung möglicherweise neu starten, damit die neuen Werte eingelesen werden können. Eine erneute Kompilierung ist jedoch nicht erforderlich.

jedoch: Wenn die .config-Datei für ein Nicht-Website-Projekt (web.config) verwendet wird, wird sie app.config genannt und im Projektstammverzeichnis abgelegt. Dies ist nicht die Datei wird Laufzeit gelesen, die tatsächlich verwendete Datei heißt Projektname .dll.config und wird im Ordner/bin neben dem Projektname DLL, wenn Sie den Code Msbuild Kopien kompilieren und Benennt die Datei app.config in diesen Speicherort um.

+0

Ja, ich weiß es. Aber eigentlich wollte ich fragen, ob es möglich ist, Einstellungen von ProjectName.dll.config in web.config neu zu definieren. Es ist nicht angenehm, eine Anzahl von Konfigurationsdateien in der Anwendung zu verwenden. – Egor4eg