我目前正在使用Ninject2绑定我的MVC应用程序中的各种服务和存储库。那部分似乎工作得很好。现在我想将我自己的类绑定到IAuthorizationFilter以及所有具有属性集的操作。
我创建了一个继承自AuthorizationFilter和Implements IAuthorizationFilter的类。
我还将它添加到我的绑定模块中:
Bind(Of IAuthorizationFilter).To(Of MyAuthFilter)
我最后一次检查时,Ninject Mvc位也支持绑定4种类型的动作过滤器。
还有其他人这样做过吗?每当我运行该站点时,调用标记为Authorize的操作的url只会重定向到登录页面,并且永远不会在我的过滤器类中遇到断点。
如果我使用的是自定义属性,那么它会起作用,但是每次我想要交换一个属性时,更改所有的Authorize属性都会失败使用Ninject的目的。
答案 0 :(得分:1)
用Ninject注册MVC过滤器是不够的;你还必须告诉MVC何时执行它们。这就是你仍然需要自定义属性的原因。 Ninject.Web.Mvc中的注入支持是允许将依赖项注入到过滤器中。