public class Sub1 : Base<SomeClass>
{
// for sake of getting injection to work, not injecting anything in ctor
public Sub1() {}
....
}
public class Sub2 : Base<SomeOtherClass>
{
// for sake of getting injection to work, not injecting anything in ctor
public Sub2() {}
....
}
public abstract class Base<T>
{
// abstract, so no ctor
....
}
我試過以下,但我得到下面列出的例外。注意它的異常引用了Base抽象類。我錯過了什麼?autofac註冊關閉抽象的子類的開放式通用
builder.RegisterAssemblyTypes(typeof(Base<>).Assembly)
.Where(t => t.IsSubclassOf(typeof(Base<>))).AsClosedTypesOf(typeof(Base<>)).InstancePerDependency();
上類型沒有構造 'Base`1 [SomeClass的]' 可以與構造取景 'Autofac.Core.Activators.Reflection.DefaultConstructorFinder' 找到。
你可以顯示你的構造函數的實現。 –
編輯顯示簡單的構造函數。我假設我在註冊中丟失了一些東西,但我不知道是什麼。 – Suedeuno