有没有办法将当前正在执行的IObjectFactory或ApplicationContext作为依赖项传递给对象?例如
<object id="SpringActionInvoker" type="xxx.SpringActionInvoker, xxx">
<constructor-arg ref="reference_to_the_ApplicationContext_or_ObjectFactor_that_is_executing" />
</object>我想将它用于将被注入控制器的Asp.Net MVC ControllerActionInvoker的Spring.Net实现。
public class SpringActionInvoker : ControllerActionInvoker
{
private IObjectFactory objectFactory;
public SpringActionInvoker(IObjectFactory objectFactory)
{
this.objectFactory = objectFactory;
}
protected override FilterInfo GetFilters(ControllerContext controllerContext, ActionDescriptor actionDescriptor)
{
//use objectFactory to inject dependencies into filters
}
}发布于 2010-10-20 00:58:20
只要让你的类实现IApplicationContextAware,就可以自动注入当前的IApplicationContext。
发布于 2010-10-08 21:36:16
这样如何:
<object id="SpringActionInvoker" type="xxx.SpringActionInvoker, xxx" />然后:
public class SpringActionInvoker : ControllerActionInvoker
{
protected override FilterInfo GetFilters(ControllerContext controllerContext, ActionDescriptor actionDescriptor)
{
IObjectFactory objectFactory = ContextRegistry.GetContext();
//use objectFactory to inject dependencies into filters
}
}https://stackoverflow.com/questions/3890254
复制相似问题