Я использую MEF и составляю детали и получаю несколько IEnumerable<Lazy<IFoo, IMetaData>>
(у меня есть несколько импортных товаров). Мне нравится объединить все составные части в одну коллекцию типа IEnumerable<Lazy<dynamic, IMetaData>>
. Это возможно без вызова/создания экземпляров реальных объектов, реализующих IFoo или других интерфейсов?Lazy <T, TMetaData> -> Lazy <dynamic, TMetaData> без создания экземпляра?
Я смотрю, как настроить большую коллекцию составных частей, но мне не нравится создавать их, пока они не будут запрошены. (Пожалуйста, смотрите мой родственный вопрос: MEF, why are identical duplicates of one and the same exported plugin created?
Спасибо за ваш ответ, он решает мою проблему, хотя я получил доступ к контейнеру, который содержит экспортированные части напрямую, и поэтому мне не приходилось работать с динамика, которая делает решение сильно типизированным. Большое спасибо –