2013-03-15 3 views
0

Когда я изменяю поле в сети или app.config проекта C#, будет ли это значение автоматически загружаться в программу без каких-либо перезапусков или перерывов в программе? Всегда ли программа извлекает из конфигурационных файлов каждый раз, когда это поле запрашивается или кэшируется программой где-то. Как это работает?Изменение web/app.config во время выполнения

Мне нужна ситуация, когда я бы изменил значение в конфиге и хочу, чтобы это значение автоматически вытягивалось приложением как мгновенно. Изменения и программа мгновенно переносят это значение.

+0

Отъезд. http://stackoverflow.com/questions/719928/how-do-you-modify-the-web-config-appsettings-at-runtime и http://stackoverflow.com/questions/2391493/is-it-possible- to-change-an-asp-net-web-config-value-at-runtime-without-reloadin –

+0

Ничего не происходит мгновенно. – spender

ответ

2

ASP.NET контролирует файл web.config и будет утилизировать AppDomain, когда он заметит изменения. Он будет ожидать обработки текущих запросов и будет помещать в очередь любые новые запросы.

Так что да, изменения будут перенесены в приложение, но не мгновенно и не без прерывания (хотя это зависит от вашего определения «мгновенно»).

1

Вы должны изменить файл web.config через код, так как это приведет к перезапуску AppDomain. Вы должны создать новый XML-файл для настройки и изменения его с помощью кода.

Смежные вопросы