System.Configuration web.config und app.config
-
20-09-2019 - |
Frage
Während eine dritte Partei mit dll ich die folgende Ausnahme war immer:
ExePath muss angegeben werden, wenn sie nicht allein in einem Stand laufen exe
mit der folgenden Spur
System.Configuration.ConfigurationManager.OpenExeConfigurationImpl (ConfigurationFileMap FileMap, Boolean isMachine, ConfigurationUserLevel Userlevel, String ExePath).
Der Grund, warum ich war festgestellt, dass es für app.config war auf der Suche, und ich hatte die Details in web.config zur Verfügung gestellt. Meine Frage ist: Warum hat die System.Configuration differenzierbare zwischen web.config und app.config? Irgendwelche Gedanken?
Lösung
Executables:
Mehrere .NET ausführbare Dateien können im selben Verzeichnis befinden. Da es nicht zwei Dateien mit dem gleichen Namen im gleichen Verzeichnis sein kann, müssen die Anwendungen unterschiedliche Namen Dateien für ihre Hauptkonfiguration verwenden. Das applicationName.exe.config
Schema löst diese.
Web-Anwendungen / sites:
.NET Web-Anwendungen sind DLLs kompiliert und Web-Sites sind in der Regel just-in-time zusammengestellt. Daher gibt es keinen „Haupteintrittspunkt“ in dieser Art von Projekten. Es ist möglich, ein Webprojekt zu erstellen, wobei jede Seite eine eigene Assembly kompiliert wird. Welches ist die Hauptbaugruppe? Welche Montage sollten wir die Konfigurationsdatei nach dem Namen?
Zum Glück nur ein Web-Projekt aus einem einzigen Verzeichnis gehostet werden, so dass nur eine Haupt-Konfigurationsdatei, hier leben wird. Dies ermöglicht die zentralen Konfigurationsdateinamen durch Konvention, und dass Dateinamen geschehen, abgeholt werden web.config
sein.
Andere Tipps
web.config
ist für Ihre Website und Web-Anwendungen nur. Es bleibt festgelegt, das heißt nicht, seinen Namen ändern; es ist immer web.config
genannt.
app.config
ist für Nicht-Web-Anwendungen - WinForms, WPF, NT Services usw. Dies wird in YourApplicationName.exe.config
umbenannt werden, wenn Sie Ihr Projekt erstellen. Sie werden mit diesem Namen in einer Anwendung Verzeichnis nicht immer einen app.config
finden (oder wenn Sie das tun, wird es nicht verwendet werden).
Microsoft wählte zwei verschiedene Arten von Namen verwenden - ich weiß nicht, -. Frag Microsoft
Also Sie im Grunde müssen nur wissen, was Sie zu tun haben und die Informationen an der richtigen Stelle zur Verfügung stellen.