Управление версиями DLL на сайте Asp.net - PullRequest
0 голосов
/ 31 августа 2010

У нас есть приложение DotNetNuke, для которого мы строим несколько модулей, и в последнее время кажется, что появляется конкретная проблема.

  1. Модули, которые мы создаем, используют сторонние DLL от Telerik.
  2. Некоторые из старых модулей используют DLL, предназначенную для .net 2.0, тогда как другие используют DLL, предназначенную для .net 3.5
  3. Теперь мы получаем конфликты со старыми модулями, потому что мы загрузили 3.5 DLL в каталог bin сайта, и это, очевидно, происходит потому, что предыдущие модули были построены на основе предыдущей DLL.

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

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

С уважением, Жак

Ответы [ 2 ]

1 голос
/ 31 августа 2010

Этого можно добиться с помощью Перенаправление привязки сборки .По сути, вы создаете раздел конфигурации в Web.config, который в основном говорит: «При запросе этих версий сборки используйте эту конкретную версию».

0 голосов
/ 31 августа 2010

невозможно удалить информацию о версии из справочника.Вместо этого вы можете использовать BindingRedirect в web.config.В основном, как следует из названия, он является справочным перенаправителем, и когда ваши модули 2.0 ищут версию telerik dll, имеющую более старый номер, вы можете перенаправить ее на более новую версию.

Это будет работать, только если все, кроме номера версиив dll отличается

...