我正在尝试注册 ApplicationContext,但不断收到错误消息。
我的 Windsor 安装程序如下所示:
public void Install(IWindsorContainer container, IConfigurationStore store)
{
container.Register(
Component.For<ApplicationContext>().ImplementedBy<MyInitializer>(),
Classes.FromThisAssembly().Pick()
.WithService.DefaultInterfaces()
.LifestyleTransient()
);
}
但是,当尝试像这样解决它时:
public class BootStrapperWindsor
{
public IWindsorContainer BootstrapContainer { get; set; }
public ApplicationContext ApplicationContext
{
get { return BootstrapContainer.Resolve<MyInitializer>(); }
}
public BootStrapperWindsor()
{
BootstrapContainer = new WindsorContainer().Install(FromAssembly.This());
}
}
调用 ApplicationContext 时出现此错误:
“未找到支持服务 MyInitializer 的组件”
当我使用结构图并在我的结构图注册表中建立类似的关联时,它工作正常:
For<ApplicationContext>().Use<MyInitializer>();
但是,我似乎无法正确地将其转换为温莎。
我做错了什么,我不能用 MyInitializer 实现 ApplicationContext?
此外,MyInitializer 继承自 ApplicationContext。