Мы получили ошибку, связанную с этим, после недавнего выпуска кода в одну из наших сред разработки. У нас есть приложение, которое является дочерним по отношению к другому приложению. До вчерашнего дня эти отношения работали нормально.
Проблема:
Мы получили желтую ошибку трассировки стека из-за ввода повторяющихся ключей. Это связано с тем, что ключ web.config для дочернего и родительского приложений имел этот ключ. Но это существовало многие годы без изменений. Почему вдруг это проблема сейчас?
Решение:
Причина, по которой это никогда не было проблемой, заключается в том, что значения ключей И всегда были одинаковыми. Вчера мы обновили строки подключения SQL, чтобы включить Имя приложения в строку подключения. Это сделало строку уникальной, и внезапно начал терпеть неудачу.
Не проводя никаких исследований точной причины этого, я должен предположить, что когда дочернее приложение наследует родительские значения web.config, оно игнорирует идентичные пары ключ / значение.
Мы смогли решить эту проблему, обернув строку подключения следующим образом
<location path="." inheritInChildApplications="false">
<connectionStrings>
<!-- Updated connection strings go here -->
</connectionStrings>
</location>
Редактировать: Я забыл упомянуть, что я добавил это в PARENTS web.config. Мне не нужно было изменять web.config ребенка.
Спасибо за помощь всем, спасли наши задницы.