Mam aplikację internetową wdrożoną na IIS. Ta aplikacja WWW zużywa bibliotekę, która chce uzyskać dostęp do pliku Web.config.Przeczytaj web.config z biblioteki używanej przez webapplicaion wdrożoną przy użyciu IIS
przykład: Foo.dll jest aplikacji internetowych rozmieszczone IIS Foo.Utility.dll zużywają Foo.dll
Jest to kod w Foo.Utility namepsace, który chce uzyskać dostęp do sieci .config z zastosowania Foo config i odczytać wartości
Configuration config = WebConfigurationManager.OpenWebConfiguration(null);
string cacheDir = config.AppSettings.Settings["abc"].Value;
Obecnie config.FilePath = C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ config \ web.config
Zmieniono mojego kodu :
Configuration config = WebConfigurationManager.OpenWebConfiguration(Assembly.GetCallingAssembly().Location);
string cacheDir = config.AppSettings.Settings["abc"].Value;
teraz mój Assembly.GetCallingAssembly() Lokalizacja jest:. C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Temporary ASP.NET Files \ root \ 62f5c902 \ 849205ff \ assembly \ DL3 \ c28d4647 \ 10e128d3_7449d001 \ foo.dll
Czy ktoś może mi pomóc zrozumieć, jak odczytać plik web.config z miejsca, w którym moja aplikacja jest wdrażana przy użyciu usług IIS?
Aby uzyskać więcej informacji lub pytanie nie jest jasne, komentarz poniżej. Zaktualizuje go
Należy pamiętać, że wymaga to odniesienie do 'montażu System.Configuration.dll', która nie odwołuje domyślnie. – mason
@mason Masz rację. Będę edytować odpowiedź. Dzięki! –