Ich habe eine Webanwendung auf IIS bereitgestellt. Diese Webanwendung verbraucht eine Bibliothek, die auf die Datei Web.config zugreifen möchte.Lesen Sie web.config aus der Bibliothek, die von der mit iIS bereitgestellten Webanwendung verwendet wird
Beispiel: Foo.dll ist die Web-Anwendung auf IIS eingesetzt Foo.Utility.dll
von Foo.dll verbraucht wirdEs in Foo.Utility namepsace ein Stück Code, der auf das Web zuzugreifen will .config von Foo Anwendung und lesen Sie die Konfigurationswerte
Configuration config = WebConfigurationManager.OpenWebConfiguration(null);
string cacheDir = config.AppSettings.Settings["abc"].Value;
Derzeit config.FilePath = C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Config \ web.config
meinen Code geändert, um :
Configuration config = WebConfigurationManager.OpenWebConfiguration(Assembly.GetCallingAssembly().Location);
string cacheDir = config.AppSettings.Settings["abc"].Value;
Jetzt ist mein Assembly.GetCallingAssembly() Lage ist. C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Temporary ASP.NET Files \ root \ 62f5c902 \ 849205ff \ assembly \ dl3 \ c28d4647 \ 10e128d3_7449d001 \ foo.dll
Kann mir jemand helfen zu verstehen, wie man die web.config von dem Ort liest, an dem meine Anwendung mit IIS bereitgestellt wird?
Für weitere Informationen oder wenn die Frage nicht klar ist, dann kommentieren Sie unten. Wird es aktualisieren
Sie sollten beachten, dass dies eine Referenz erfordert 'System.Configuration.dll' Versammlung, die nicht standardmäßig verwiesen wird. – mason
@ Mason Sie haben Recht. Ich werde die Antwort bearbeiten. Vielen Dank! –