Как добавить дополнительную логику для разрешения типов во время выполнения?

StackOverflow https://stackoverflow.com/questions/122544

  •  02-07-2019
  •  | 
  •  

Вопрос

Существует ли общий способ без создания и управления собственным хостом CLR взять на себя поиск и загрузку типа, если этот тип не найден?

Ниже приведен лишь пример.Стремясь получить первый ответ, не предлагайте новую платформу надстроек или MEF в качестве решения моего вопроса.

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


Насколько я могу судить (если у кого-то нет работающего примера), ни одно из упомянутых до сих пор событий AppDomain не срабатывает, когда тип не найден.


Подожди, видимо это работает!Не знаю, что я сделал не так раньше, но это событие работает хорошо и хорошо.

Это было полезно?

Решение

Есть мероприятия на Домен приложения что вы можете использовать.

Вы хотели бы ТипРазрешить событие и, возможно, СборкаРешить событие.

Также вы можете прочитать больше о том, как Среда выполнения .net разрешает сборки, поэтому вы можете определить эту информацию в разделе зондирования.

Другие советы

Разве это невозможно, просто используя события AppDomain?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top