Используйте разные справочные версии

У меня есть два проекта в моем решении, которые используют Lucene.Net. Проект A имеет ссылку на Umbraco и Lucene.Net версии 2.9.4.1, а проект B имеет версию Lucene 3.0.3.0. Я хочу использовать 3.0.3.0, но не могу обновить проект A до 3.0.3.0, потому что Umbraco использует более старую версию.

Когда я компилирую, я получаю эту ошибку:

Assembly 'B, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' uses 'Lucene.Net, Version=3.0.3.0, Culture=neutral, PublicKeyToken=85089178b9ac3181' which has a higher version than referenced assembly 'Lucene.Net, Version=2.9.4.1, Culture=neutral, PublicKeyToken=85089178b9ac3181' A

Я пробовал внешний псевдоним, но все равно получаю ту же ошибку.

Можно ли скомпилировать и иметь разные версии Lucene.Net в каждом проекте?

Обновить

Я также попытался добавить связывание DirectRedirect напрямую, но получить ту же ошибку после.

<dependentAssembly>
        <assemblyIdentity name="Lucene.Net" publicKeyToken="85089178b9ac3181" />
        <bindingRedirect oldVersion="0.0.0.0-2.9.4.1" newVersion="2.9.4.1" />
        <bindingRedirect oldVersion="3.0.3.0-3.0.3.0" newVersion="3.0.3.0" />
      </dependentAssembly>

Если я понимаю это право, bindingRedirect указывает всем проектам использовать одну и ту же версию. Я хочу, чтобы старая версия все еще использовалась в проекте A, а новая версия использовалась в проекте B.

0 ответов

Другие вопросы по тегам