Рабочий процесс IIS: какие библиотеки DLL загружаются, когда разные сайты ссылаются на разные версии? - PullRequest
2 голосов
/ 20 октября 2011

IIS 6.0, один корневой веб-сайт с виртуальными каталогами внизу.

Корневой веб-сайт имеет свой собственный каталог bin, который содержит более старые версии библиотек DLL ... это рабочий сайт, и мы не делаемхочу потрогать его.

Пример:

CSA.Network.DLL  1.3.9117.0

Виртуальный каталог под ним имеет каталог bin, который содержит более новую версию этих DLL, например:

CSA.Network.DLL  1.7.8221.0

Когда запускается рабочий процесс IIS, он загружает версию DLL DLL 1.3 ... когда он загружает страницу в виртуальный каталог, он также загружает 1,7 или будет придерживаться версии 1,3, потому что он уже находится в памяти?

Ссылки являются ссылками проекта, и поэтому они не требуют определенного типа, что заставляет меня думать, что он попытается использовать 1.3 и никогда не загружать 1.7.Это верно?Какие правила действуют здесь?

Спасибо!

1 Ответ

1 голос
/ 20 октября 2011

Комментарии vcsjones и Сэма Шайлса охватывают все ... но повторять:

  • Сайты будут работать в разных доменах приложений и в результате получат разные версии DLL.
  • Если вы беспокоитесь, вы можете настроить сайты, работающие в разных AppPools
  • Убедитесь, что в GAC нет версии сборки с таким же идентификатором - GAC всегда имеет приоритет над любыми другими местоположениями.
  • Убедитесь, что для сборок для машины или вашего сайта не заданы перенаправления.
...