Целевая программа проекта установки VS.config в ..obj \ x86 \ Release - PullRequest
2 голосов
/ 26 октября 2011

Я создал преобразование app.config для своего проекта WinForms, используя решение Дана Абрамова здесь .Прекрасно работает, и файл конфигурации преобразуется и присутствует в правильной папке obj.

Когда я смотрю на выходные данные для основного вывода моего приложения, он получает app.config из каталога проекта вместо соответствующегопапка obj, как и все остальное ... большой надзор, на мой взгляд, со стороны MSFT.Очевидно, что они не имели в виду преобразования для всех типов файлов конфигурации.

Итак, как мне получить основной вывод моего основного проекта для вывода файла конфигурации из папки obj на основе конфигурации сборки?

Ответы [ 2 ]

0 голосов
/ 28 апреля 2012

Вы пытались использовать SlowCheetah (расширение VS), которое позволяет вам преобразовывать app.config так же, как работает web.config.Также поддерживается ваш сценарий преобразования app.config для проекта установки.

0 голосов
/ 01 ноября 2011

Я нашел работу вокруг, которую искал здесь .Прокрутите вниз и увидите ответ Какоскина.В сочетании с решением Дана Абрамова я смог получить результаты, которые искал.Вот код MSBuild, который я использовал:

  <Target Name="AfterBuild" Condition="exists('app.$(Configuration).config')">
<TransformXml Source="app.config" Destination="$(IntermediateOutputPath)$(TargetFileName).config" Transform="app.$(Configuration).config" />
<!-- Force build process to use the transformed configuration file from now on. -->
<ItemGroup>
  <AppConfigWithTargetPath Remove="app.config" />
  <AppConfigWithTargetPath Include="$(IntermediateOutputPath)$(TargetFileName).config">
    <TargetPath>$(TargetFileName).config</TargetPath>
  </AppConfigWithTargetPath>
</ItemGroup>
<TransformXml Source="App.config" Transform="app.$(Configuration).config" Destination="App.Transformed.config" />

Раздел <ItemGroup> удалит файл app.config из соответствующей папки obj \ и заменит его преобразованным файлом конфигурации, которыйне нужен, но я все равно оставил его там.

Надеюсь, это поможет и другим!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...