Переопределение / замена ConfigurationElements в app.config во время выполнения

У меня есть два объекта ConfigurationElement (один из которых находится в app.config запущенного приложения), и мне нужно заменить один другим. У меня также есть ConfigurationElementCollection, к которому принадлежит первый элемент. Похоже, что методы Add и Remove являются внутренними. Разве это не предназначено для меня, чтобы иметь возможность обновлять объект ConfigurationElementCollection во время выполнения? Если так, каковы альтернативы?

Благодарю.

1 ответ

ConfigurationElementCollection является абстрактным классом, поэтому конкретный класс коллекции может предоставлять методы для добавления и удаления.

Однако при получении с помощью метода ConfigurationManager.GetSection конфигурация доступна только для чтения, поэтому даже если методы были доступны, они не будут работать:

Метод GetSection обращается к информации о конфигурации во время выполнения, которую он не может изменить. Чтобы изменить конфигурацию, вы используете метод GetSection в файле конфигурации, который вы получаете с помощью одного из следующих методов Open:

Что вам нужно сделать, и кто потребляет эту конфигурацию? Возможно, вы сможете изменить его поведение на более высоком уровне, а не менять информацию о конфигурации.

Другие вопросы по тегам