Как использовать final {project}.исполняемый.файл конфигурации при создании проекта установки
Я создал консольное приложение (мля.exe) с конкретным приложением.конфиг для dev и prod. Они называются dev_app.config
и prod_app.config
. Я подключил AfterBuild
target в моем файле csproj* который копирует правильный файл конфигурации в каталог bin как blah.exe.config
.
Я также создал проект установки для этого консольного приложения, но у меня возникла небольшая проблема. Кажется, что проект установки использует фактический app.config
в папке проекта, в отличие до финала!--4--> (находится в папке bin).
|--Bin
| |--Debug
| |--Blah.exe.config <--- I want the setup project to use this file
|--app.config <--- Setup project uses this file at the moment
|--dev_app.config
|--prod_app.config
как я могу заставить проект установки использовать конечный конфигурационный файл, сгенерированный в папке bin, а не фактический ?
Дополнительная Информация:
мое текущее решение включает в себя добавление еще одного AfterBuild
команда, которая перезаписывает фактический . Мне не нравится подход, так как он заставляет меня иметь дополнительный файл, который мне не нужен. Кроме того, наличие этого файла уже вызвало у меня некоторое горе, так как я внес изменения в app.config
файл, который был перезаписан при строительстве. Вопрос в том, как получить проект установки, используя окончательный файл конфигурации в папке bin и не как управлять конфигурацией или способами создания файла конфигурации.
* адаптировано из развертывание приложения.конфигурации на основе конфигурации сборки
1 ответов
Я использую тот же самый сценарий, но я использую BeforeBuild вместо AfterBuild, и это всегда было хорошо. Я делаю это как в веб-проектах, так и в проектах windows. Ниже приведен код, который я использую.
<Target Name="BeforeBuild">
<ItemGroup>
<ConfigSourceFiles Include="Web.$(Configuration).config" />
<ConfigDestinationFiles Include="Web.config" />
</ItemGroup>
<Copy SourceFiles="@(ConfigSourceFiles)" DestinationFiles="@(ConfigDestinationFiles)" />
</Target>
надеюсь, что это помогает.