我想使用 Unity 解析一个抽象类。抽象类具有具有某些泛型的实现。例如:
public abstract class Iface<S, T> where S : SomeClass where T : OtherClass
public class face : Iface<SomeClassExample, OtherClassExample>
然后我要执行:
UnityContainer.Resolve<Iface<SomeClassExample, OtherClassExample>>();
但它给出了错误异常是:
InvalidOperationException - Instances of abstract classes cannot be created.
这很明显,因为我想创建一个抽象类。我希望 Unity 足够聪明,能够根据泛型找到特定的类。有可能做这样的事情吗?
您需要明确要求它解析您的 face
类(class)。仅查看错误消息,它正在尝试创建 Iface<SomeClassExample, OtherClassExample>
的实例
UnityContainer.Resolve<face<SomeClassExample, OtherClassExample>>();
如果你想使用Iface作为接口(interface)——创建一个接口(interface)并注册
我是一名优秀的程序员,十分优秀!