Можно ли программно создать элемент местоположения в web.config (например, с помощью ConfigurationLocation) - PullRequest
2 голосов
/ 14 июня 2011

Я могу получить доступ и изменить содержимое тега в web.config, начиная с:

Configuration config = WebConfigurationManager.OpenWebConfiguration(virtualFolderPath); 
ConfigurationLocationCollection locations = config.Locations;

, затем для каждого местоположения:

Configuration thisConfig = location.OpenConfiguration();

Однако яне вижу способа добавить новый , это возможно?

Ответы [ 3 ]

1 голос
/ 14 июня 2011

A ConfigurationLocationCollection является производным от System.Collections. ReadOnlyCollectionBase, который доступен только для чтения. Поэтому, используя API конфигурации в том виде, в каком они есть сейчас, это невозможно.

1 голос
/ 14 июня 2011

Web.config является легальным XML-документом. Итак, помимо других соображений, ничто не мешает вам загрузить его и использовать методы XMLDocumment / XPath или XDocument для изменения и сохранения файла.

1 голос
/ 14 июня 2011

Я бы посоветовал вам не делать это программно, потому что всякий раз, когда вы пытаетесь add/edit значения в файле web.config, ваше приложение перезапускается и сеанс всех пользователей будет завершен.обратитесь к этой статье за ​​подробностями Распространенные причины проблемы потери сеанса в приложениях ASP.NET

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...