Я создал консольное приложение, отвечающее за генерацию экспорта данных из базы данных. Это должно быть развернуто на пакетном сервере, который отличается от того, где работает база данных. В app.config мне нужно настроить строку подключения к базе данных. У меня есть около восьми сред, в которых мне нужно развернуть это консольное приложение. До сих пор мне нужно было хранить исходный файл конфигурации для каждой среды и копировать его отдельно в папку установки.
Первое, что я знаю, это добавление файлов в проект установки в Visual Studio. Рядом с основным выводом я добавил все файлы конфигурации со свойством условия. Я добавил экран в мастер установки (текстовое поле), где я прошу пользователя, устанавливающего систему, ввести имя среды, как я указал. Я успешно настроил это в одном из проектов установки, но в двух проектах мое решение неверно. В них я всегда получаю свой файл app.config в папке установки, а не файл конфигурации, который я создал в проекте установки. Когда я переименовываю файлы, я вижу их только тогда, когда я ввожу правильные данные во время установки. Итак, я предполагаю, что мои файлы каким-то образом перезаписываются app.config из моего проекта.
Результат сборки моей установки:
Building file 'C:\MyProject\MyProject.Setup\Deploy\MyProject.msi'...
Packaging file 'MyProject.exe.config'...
Packaging file 'MyProject.exe'...
Packaging file 'MyProject.exe.config'...
Packaging file 'MyProject.exe.config'...
Кто-нибудь знает, что здесь не так? Нужны ли особые условия или настройки? Или, может быть, другая стратегия развертывания. Редактировать файлы конфигурации вручную нельзя. Я ценю любую помощь. Заранее спасибо.