IIS7 не загружает сборку - PullRequest
1 голос
/ 23 марта 2011

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

Проблема в том, что после повторного использования пула приложений IIS 7.5 или IISRESET не все сборки могут быть обнаружены посредством отражения.

Есть ли способ решить эту проблему, не просматривая папку bin и не загружая ассемблер на каждую DLL?

Обновление:

Я использую AppDomain.Current.GetAssemblies() для извлечения всех загруженных сборок.

1 Ответ

0 голосов
/ 23 марта 2011

Проблема решена.

Не используйте AppDomain.CurrentDomain.GetAssemblies ().

Вместо этого используйте

System.Web.Mvc.BuildManager.GetReferencedAssemblies()

Только причуда проходит .GetReferencedAssemblies ()назад ICollection (объектов), которую нужно привести в Assembly, а затем работать с ней.

Спасибо всем за помощь.

Правка - Кредит переходит к Dominic Pettifer - "AppDomain.CurrentDomain.GetAssemblies () Считается вооруженным и чрезвычайно опасным "http://www.dominicpettifer.co.uk/Blog/44/how-to-get-a-reference-to-all-assemblies-in-the--bin-folder?replyId=357

Действительно.

Тройка Править.не AppDomain.CurrentDomain.GetReferencedAssemblies ().Используйте класс BuildManager из System.Web.Mvc.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...