【发布时间】:2011-07-03 10:02:30
【问题描述】:
我想使用 Spring.Net 在 ASP.NET MVC 中依赖注入一个属性,我的属性是这样的(注意这是我刚刚输入的所有伪代码)...
public class InjectedAttribute : ActionFilterAttribute
{
private IBusinessLogic businessLogic;
public InjectedAttribute(IBusinessLogic businessLogic)
{
this.businessLogic = businessLogic;
}
public override void OnActionExecuting(ActionExecutedContext filterContext)
{
// do something with the business logic
businessLogic.DoSomethingImportant();
}
}
我正在使用控制器工厂来创建控制器,这些控制器也注入了各种业务逻辑对象。我正在像这样从 IoC 容器中获取控制器...
ContextRegistry.GetContext().GetObject("MyMVCController");
我正在配置我的控制器,就像这样传递业务逻辑
<object name="MyMVCController" type="MyMVC.MyMVCController, MyMVC">
<constructor-arg index="0" ref="businessLogic" />
</object>
有没有办法配置属性的注入?我真的不想把它放到我的属性中......
public class InjectedAttribute : ActionFilterAttribute
{
private IBusinessLogic businessLogic;
public InjectedAttribute(IBusinessLogic businessLogic)
{
this.businessLogic = ContextRegistry.GetContext().GetObject("businessLogic");
}
....
【问题讨论】:
标签: asp.net-mvc dependency-injection spring.net