Использование MVCContrib's WindsorControllerFactory с новым Windsor Castle 2.0 - PullRequest
2 голосов
/ 14 мая 2009

Я пытаюсь использовать WindsorControllerFactory (последняя версия 1.0.0.916) вместе с новым Windsor Castle 2.0 (опять же, последняя версия). Но я получаю

Не удалось загрузить файл или сборку 'Castle.Windsor, версия = 1.0.3.0 ...

ошибка при запуске веб-приложения. Так или иначе, во время написания этого вопроса мне удалось убедить веб-приложение привязаться к новым библиотекам Castle, добавив этот блок в файл Web.config:

  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Castle.Windsor" culture="neutral" publicKeyToken="407dd0808d44fbdc"/>
        <bindingRedirect oldVersion="1.0.3.0" newVersion="2.0.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Castle.Core" culture="neutral" publicKeyToken="407dd0808d44fbdc"/>
        <bindingRedirect oldVersion="1.0.3.0" newVersion="1.1.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Castle.MicroKernel" culture="neutral" publicKeyToken="407dd0808d44fbdc"/>
        <bindingRedirect oldVersion="1.0.3.0" newVersion="2.0.0.0"/>
      </dependentAssembly>
    </assemblyBinding>
  </runtime>

Так что, я думаю, я ответил на свой вопрос, но я хотел поделиться этим с любым, у кого возникла такая же проблема. Или есть лучший способ (кроме компиляции исходников MVCContrib самостоятельно)?

Ответы [ 2 ]

0 голосов
/ 30 ноября 2010

Мы используем тот же подход. Существует одна проблема с последним доступным MvcContrib (v.2.0.96.0). Он использует Castel.Windsor v.2.1.0.0, который не совместим с последней версией Castel.Windsor (2.5.1.0): AddComponentLifeStyle устарел. Поэтому вам придется изменить соответствующий код MvcContrib.

Кстати, вы можете подписывать dll MvcContrib, не перестраивая их, например, с помощью этого инструмента: http://signer.codeplex.com/

0 голосов
/ 22 июля 2009

Я бы тоже хотел собрать MvcContrib и поместить его источник вместе с нашим кодом проекта.

...