TempoClick Ответов: 2

Используйте один конфигурационный файл .config для всех сайтов IIS


Привет,

У меня есть несколько сайтов в IIS, каждый из которых имеет свой собственный конфигурационный файл для строк подключения (подключений.конфиг).
<connectionStrings>   
    <add name="ServerDataConnection" connectionString="connection1" />    
    <add name="UserManagementModel" connectionString="connection2" />
   <add name="BlobStorageConnection" connectionString="connection3" />
</connectionStrings>

Я ссылаюсь на файл на каждом сайте внутри Web.config следующим образом:
<connectionStrings configSource="connections.config" />

Я хочу использовать только один connections.config для всех сайтов.

Что я уже пробовал:

Я попытался поместить файл .config в корневой каталог и использовать его для всех сайтов, но не могу найти способ ссылаться на него (получить путь)? Как я могу сделать это таким образом?

Если есть какие - то другие способы сделать это, я буду рад получить ваши ответы.

Спасибо

2 Ответов

Рейтинг:
2

MadMyche

Возможно, вам захочется заглянуть в иерархию конфигурационных файлов; в частности ApplicationHost.config и если вы можете поместить туда свои "общие" части различных файлов web.config и просто наследовать их.

Рекомендации:
MS Docs=> Ссылка на конфигурацию=> конфигурация IIS[^][^]
MS Docs=> введение в ApplicationHost.config[^]


Рейтинг:
2

Richard Deeming

С помощью configSource требуется физический файл либо в том же каталоге, что и основной конфигурационный файл, либо в подкаталоге. Вы не можете ссылаться на файл в Родительском каталоге, и вы не можете использовать виртуальные каталоги, чтобы обойти это ограничение.

Вы потенциально можете создать жесткая ссылка[^] в общий конфигурационный файл, который заставит один и тот же файл появиться в нескольких каталогах.

mklink /h connections.config ..\connections.config
mklink | Microsoft Docs[^]

В противном случае вам нужно будет добавить эти параметры в конфигурацию всего приложения. Самый простой способ сделать это-использовать опцию "редактор конфигурации" в диспетчере IIS.