У меня есть небольшой фрагмент кода, который перебирает типы, загруженные в настоящее время в AppDomain, который выполняется в приложении ASP.NET. Вот как получаю сборки:
var assemblies = AppDomain.CurrentDomain.GetAssemblies();
Когда приложение запускается впервые, проблем нет, и присутствуют все ожидаемые мной типы. Но когда я обновляю Web.config или убиваю процесс w3p.exe (или процесс перезапускается по какой-либо причине), доступны только некоторые из ожидаемых мной типов. Когда я перехожу к отладчику, я замечаю, что некоторые сборки из частного пути поиска (каталог bin моего приложения) не были загружены. Я исходил из предположения, что все сборки загружаются при запуске приложения и перезапускаются независимо от того, требовались они немедленно или нет. Но в случае перезапуска этого, похоже, не происходит , если эти файлы сборки не были обновлены.
Мне нужно собрать информацию о типе при запуске для использования позже. Но поскольку во время перезапуска типы недоступны, позже, когда потребуется использовать информацию о типе, будет пахнуть хаосом. Итак, имея это в виду, как я могу решить этот недостаток или обойти его?