AutoFac позволяет регистрировать универсальные классы с помощью builder.RegisterGeneric(Type type)
, однако он не принимает параметры для построения.В описании метода даже сказано:
Зарегистрируйте непараметризованный тип geenric
Однако, что если у меня есть универсальный интерфейс IService, реализованный Service, который требует некоторогопараметры?
В настоящее время я зарегистрировал это так:
builder.Register(c =>
new Service<Class1>(
parameter1,
parameter2))
.As<IService<Class1>>();
При регистрации я должен указать точный тип T (Class1 в данном случае).Могу ли я сделать это более обобщенно, чтобы у меня была одна регистрация для любого T?