Создание новых доменов приложений

Получение уведомлений о загрузке сборок

Перечисление загружаемых сборок

С применением на уровне экземпляра метода GetAssemblies () можно просмотреть все сборки .NET, загруженные в заданный домен приложения. Этот метод будет возвращать массив объектов типа Assembly, который, как было показано в предыдущей главе, является членом пространства имен System. Reflection (и потому требует импорта этого пространства имен в файл кода С#).

Для получения уведомлений от CLR-среды при загрузке новой сборки в определенный домен приложения необходимо организовать обработку события AssemblyLoad. Это событие имеет тип делегата AssemblyLoadEventHandler, который может указывать на любой метод, принимающий System. Ob j ect в первом параметре и AssemblyLoadEventArgs — во втором.

Вспомните, что один процесс способен обслуживать множество доменов приложений посредством статического метода Арр Domain. Create Domain (). И хотя необходимость в создании новых доменов приложений на лету в большинстве приложений .NET возникает крайне редко, важно в общем понимать, как это делается. Например, в главе 17 будет показано, что создаваемые динамические сборки должны устанавливаться в специальный домен приложения. Вдобавок многие API-интерфейсы, связанные с безопасностью .NET, требуют понимания того, каким образом создавать новые домены приложения для изолирования сборок на основе предоставляемых учетных данных безопасности.