У меня есть вопрос относительно AppSettings в С#. Сначала я опишу свою ситуацию.
Мое решение состоит из исполняемой программы program.exe
и assembly.dll
.
Программа ссылается на сборку и работает с ней. В сборке-проекте установлены параметры приложения, настроенные с помощью диспетчера параметров проекта Visual Studio. Теперь, когда я компилирую свое решение в моей папке assembly\bin\release
, есть файл assembly.dll.config
, который содержит настройки, которые я установил ранее.
Теперь я не понимаю: в моем программном проекте, где я ссылаюсь на assembly.dll
, я проверил CopyLocal=True
, но в моей папке program\bin\release
есть только assembly.dll
, но не сборка. dll.config, но STILL assembly.dll
знает настройки, которые я установил в настройках приложения сборки и проекта.
Теперь я несколько раз читал, что сборки всегда получают доступ к настройкам исполняемой программы, но у программы нет соответствующих параметров, поэтому почему сборка знает правильные настройки, если нет файла assembly.dll.config
?
Я предполагаю, что параметры скомпилированы в сборку в compiletime (конечно), но тогда нет смысла, что в моей сборке \bin\release папке фактически есть файл assembly.dll.config.
Я попытался скопировать этот файл в мою папку program\bin\release
, где assembly.dll
скопирован на операцию сборки, но assembly.dll
просто игнорирует, есть ли файл assembly.dll.config
, присутствующий в той же папке. Он всегда использует настройки из compiletime. Я просто не понимаю использование файла assembly.dll.config
. Почему он создается, когда он никогда не влияет на поведение assembly.dll´s
?