Строка подключения IIS не наследуется
У меня есть проблема, когда я установил строку подключения на уровне компьютера в IIS, и она наследуется полностью, как и ожидалось... ЗА ИСКЛЮЧЕНИЕМ для приложения, в котором я хочу использовать строку. Другие приложения в то же время Уровень наследует строку.
В прошлом в приложении была определена строка подключения с тем же именем. Удаление его на уровне приложения удаляет его навсегда: оно не будет наследоваться. Добавление его на уровне приложения делает его локальным. Я не могу найти способ для этого приложения наследовать строку подключения.
Есть ли способ сбросить это поведение? Если не считать удаления приложения целиком?
2 ответа
Откройте конфигурацию AppHost в C:\Windows\System32\inetsrv\config\applicationHost.config и найдите имя вашего приложения, просмотрите совпадения, имеет ли какое-либо из них отношение к строкам соединения?
Есть ли в вашем приложении родитель, который может удалить строку подключения?
У меня была такая же проблема.
У меня была определена строка подключения для узла сервера (в IIS), затем я щелкнул "Строки подключения" на узле приложения на веб-сайте по умолчанию. Я изменил это, затем решил, что изменения не нужны, поэтому удалил строку подключения из узла приложения.
Это то, что произошло. Строка соединения была фактически определена для сервера и унаследована узлом приложения, поэтому я фактически не удалял ее из узла приложения, как я говорил на самом деле: "Я не хочу, чтобы это приложение наследовало эту строку соединения ".
Я удалил его, поэтому, возможно, конфигурация не совсем правильная, но IIS реализовал это, добавив что-то вроде следующего в web.config для приложения:
<connectionstrings>
<remove name="connstringname"... />
</connectionstrings>
Итак, исправление состоит в том, чтобы отредактировать web.config и удалить эту запись, тогда ваше приложение сможет наследовать строку подключения от вышестоящего узла.