【发布时间】:2009-12-03 05:44:43
【问题描述】:
当我使用这个注册时:
container.Register(
Component
.For<IFooFactory>()
.ImplementedBy<FooFactory>(),
Component
.For<IFoo>()
.UsingFactoryMethod(kernel => kernel.Resolve<IFooFactory>().CreateFoo())
);
我得到了这个例外:
Castle.MicroKernel.ComponentRegistrationException:类型 MyNamespace.IFoo 是抽象的。 因此,不可能将其实例化为 MyNamespace.IFoo 服务的实现
我不太确定问题出在哪里。但是堆栈跟踪显示在'DefaultComponentActivator.CreateInstance()'中,以下条件成功然后抛出错误:
if (createProxy == false && Model.Implementation.IsAbstract)
我在这里需要某种代理吗? 注册错了吗?
【问题讨论】:
标签: castle-windsor ioc-container