Отдельный файл конфигурации для провайдеров

В небольшом тестовом проекте у меня в настоящее время есть разделы провайдера в файле web.config. Я хочу переместить это в отдельный конфигурационный файл, например provider.config. Мой текущий код создания экземпляра провайдера выглядит так:

   //Get the feature's configuration info
                    ProviderConfiguration pc = (ProviderConfiguration)ConfigurationManager.GetSection(DATA_PROVIDER_NAME);

Этот код работает, если информация о провайдере находится в web.config, но как мне прочитать эту информацию из другого файла (например, provider.config), потому что кажется, что ConfigurationManager «читает» только файл web.config. Я могу пропустить что-то очень простое здесь :)

Хотелось бы получить больше информации об этом.

Спасибо В.


person Vivek    schedule 19.05.2010    source источник
comment
Я протестировал редактирование с собственным разделом конфигурации, и он отлично работает.   -  person Richard    schedule 20.05.2010


Ответы (1)


Если вы хотите сослаться на внешний файл для набора настроек в web.config, вы можете сделать это:

<?xml version="1.0"?>
<configuration>

<appSettings file="externalSettings.config"/>

<connectionStrings/>

<system.web>

    <compilation debug="false" strict="false" explicit="true" />

</system.web>

Hope this helps.

Итак, в вашем случае вы можете сделать что-то вроде этого:

 <configSections>
    <section name="ProviderName" type="System.Configuration.NameValueSectionHandler" />
  </configSections>
  <ProviderName file="provider.config" />
person Richard    schedule 19.05.2010
comment
спасибо, Ричард, я знаю об атрибутах файла или источника конфигурации :). Но здесь проблема в разделах провайдера, например: ‹section name=MyProvider type=xx /› ‹MyProvider....› ‹add ...› ‹/MyProvider› - person Vivek; 20.05.2010
comment
Ричард, я думаю, что я не ясно изложил свой вопрос, извиняюсь за это. На самом деле, если бы я использовал имя файла, мне пришлось бы сделать это для КАЖДОГО провайдера, от чего я думал избавиться. По сути, я даже не хочу упоминать ЛЮБОЙ раздел провайдера (даже ‹section name=...›) в файле web.config. Я хочу всю эту информацию в другом классе конфигурации - person Vivek; 20.05.2010