Ustawienie roli lazuru jest bardzo użyteczne, ponieważ pozwala zmieniać wartości w locie, podczas gdy uruchomiony jest IIS. Ale problem polega na tym, że jeśli masz wielu użytkowników i jeśli czytasz za każdym razem wartość konfiguracyjną z pliku, nie najlepiej jest używać go bez umieszczania go w zmiennej statycznej. Następny problem, jeśli umieścisz go w zmiennej statycznej , musisz zresetować IIS za każdym razem, gdy ją zmienisz. Zrobiłem trochę badań i znalazłem podobne pytanie na stackoverflow, które mówi, że tylko pierwszy raz czyta conf na pliku, a następnie przechowuje je w pamięci podręcznej. Ale to pytanie, na które udzielono odpowiedzi, dotyczy: ConfigurationManager, moje jest około RoleManager z Azure.Czy RoleEnvironment.GetConfigurationSettingValue czyta za każdym razem z pliku cfg?
Jest to linia, która staje się aktualne ustawienie na lazurowym:
RoleEnvironment.GetConfigurationSettingValue("Appname.settingKey");
to jest taki, który zapisuje je w pamięci podręcznej, co wiem, jak to działa i pobiera aktualne ustawienie np .: ConnectionString w webconfig:
ConfigurationManager.ConnectionStrings["SettingKey"].ConnectionString;
Czy możesz udostępnić łącze do pytania dotyczącego przepełnienia stosu, o którym wspomniano powyżej? –
tak, na pewno: http://stackoverflow.com/questions/13357765/does-configurationmanager-appsettingskey-read-from-the-web-config-file-each-ti –