问题

我使用Castle Windsor作为Castle Monorail项目中的IoC容器。我想将当前的IRailsEngineContext实例注入到从控制器中的容器中解析的对象中。

上下文

我想要将rails上下文注入的对象将用于包装会话对象,以保留先前查看的记录的ID。然后引用它以确保不再查看它们。

替代解决方案

我可以在每次调用时将上下文传递给方法,也可以手动注入它,但直接从容器中注入它会很不错。

问题

我想不出在容器中注入上下文的方法。有没有办法做到这一点?这甚至有意义吗?

有帮助吗?

解决方案

Container.Register(
    Component.For<IRailsEngineContext>()
             .UsingFactoryMethod(()=>MonoRailHttpHandler.CurrentContext)
             .LifeStyle.Transient
);

IRailsEngineContext - 我想是来自MonoRail的版本。我建议你搬到更新的地方,越快越好。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top