#c# #lambda #unity-container
#c# #лямбда #unity-контейнер
Вопрос:
Мне было интересно, как мне добиться такой функции в UnityContainer:
container.RegisterType<IDummy>(Func<IDummy>) // deferred resolution
Ответ №1:
Если вы собираетесь зарегистрировать factory вместо instance, попробуйте это:
container.RegisterType<IDummy>(new InjectionFactory(context => new Dummy()));
Просто замените «context => new Dummy()» на ваш лямбда.
Комментарии:
1. Этот метод устарел. Текущий способ сделать это: контейнер. RegisterFactory<IDummy>(контекст => новый фиктивный ());