У меня есть приложение Prism WPF (использующее Unity), которое загружает несколько модулей, каждый из которых регистрирует объект, реализующий общий интерфейс.
Во время завершения работы я хочу, чтобы мое приложение могло разрешить все реализации интерфейса, которые были зарегистрированы всеми загруженными модулями.
Я понимаю, что каждый модуль может зарегистрировать отдельный модуль именованный экземпляр, например
container.RegisterType<IFoo, Foo1>("registration1");
container.RegisterType<IFoo, Foo2>("registration2");
Но мое приложение не знает ни о строках "registration1" или "registration2", ни его не волнует. Он даже не знает, какие модули будут загружены. Он просто хочет получить экземпляр интерфейса и вызвать функцию.
Есть ли способ, которым я могу попросить IContainerProvider
"дать мне экземпляры каждой отдельной регистрации IFoo", не зная имен, используемых для зарегистрировать их?