настроить сборку привязки один раз для нескольких исполняемых - PullRequest
0 голосов
/ 08 декабря 2010

У меня есть папка, которая содержит несколько исполняемых файлов.В настоящее время перенаправление привязки сборки настраивается в каждом файле executable.exe.config.Есть ли способ настроить это только один раз, и все исполняемые файлы в этой папке автоматически подберут его?Я бы хотел избежать machine.config, потому что это применимо ко всему компьютеру.

<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
  <publisherPolicy apply="yes" />
  <dependentAssembly>
    <assemblyIdentity name="SomeAssembly" publicKeyToken="10addddbec4aebba" />
    <publisherPolicy apply="yes" />
      <bindingRedirect oldVersion="0.0.0.0-7.9.999.0" newVersion="5.8.11.5" />
  </dependentAssembly>
  <dependentAssembly>
    <assemblyIdentity name="SomeOtherAssembly" publicKeyToken="23adeddbac4ae12a" />
    <publisherPolicy apply="yes" />
      <bindingRedirect oldVersion="0.0.0.0-7.9.999.0" newVersion="5.8.11.5" />
  </dependentAssembly>
</assemblyBinding>

Ответы [ 2 ]

1 голос
/ 08 декабря 2010

Можно «разбить» ваши конфиги на разные разделы и поместить эти разделы во внешние файлы.Вы могли бы почти пустой конфиг для каждого exe-файла и добавить туда такой раздел.Однако Enterprise Lib предлагает для этого блок приложения.
Другое решение заключается в использовании символических ссылок на файлы - aka junction - для перенаправления каждой конфигурации на глобальную (но яне рекомендую делать это).

0 голосов
/ 08 декабря 2010

Я считаю, что нет никакого способа иметь один файл конфигурации для нескольких исполняемых файлов. MSDN упоминает только два варианта - executable.exe.config и глобальный machine.config.

Единственное решение, которое мне пришло в голову, - это создать один большой исполняемый файл, который имеет все текущие функциональные возможности исполняемых файлов (и одну общую конфигурацию), а затем заставить текущие исполняемые файлы запустить большой с каким-то переключателем и т. Д.

...