我的情况如下:
public class FooService : IFooService
{
public IBarService BarService { get; set; }
}
public class BarService : IBarService
{
public IFooService FooService { get; set; }
}
IFooService和IBarService都是从IApplicationService继承的 组件注册器看起来像这样
container.Register(
AllTypes.FromAssemblyContaining<IApplicationService>()
.BasedOn<IApplicationService>()
.WithService.FromInterface()
.LifestyleSingleton());
问题是属性为null。如果我添加任何其他不使用foo或bar服务的服务,则服务将被正确解析。
看起来城堡windsor无法处理交叉引用。或者我应该添加到组件注册商中吗?
答案 0 :(得分:0)
我尝试过构造函数注入,看起来它正在工作。