【发布时间】:2011-05-05 11:27:06
【问题描述】:
我有一个控制器和一个自定义的 ActionInvoker。我可以将自定义的 ActionInvoker 设置如下,
public HomeController()
{
this.ActionInvoker = new MyActionInvoker(..);
}
但不想在每个控制器中都这样做(我也不想使用基本控制器)。我想使用 Ninject 来注入 ActionInvoker。由于 ActionInvoker 是基本控制器的一部分,我无法将 [inject] 添加到它。我搜索了很多并尝试了类似
Bind<HomeController>().ToSelf().WithPropertyValue("ActionInvoker",
x =>x.Kernel.GetService(typeof(IActionInvoker)));
但它没有用。我做错了吗?或任何实现我想要的建议。谢谢
更新:这行得通,还有其他问题。谢谢你的回答。
【问题讨论】:
-
您使用哪个 MVC 版本,您是否使用任何 Ninject.Web.Mvc 扩展?您当前的实现可能有一些副作用。
标签: asp.net-mvc dependency-injection ninject