Asp.net mvc 2 如何获取动作名称?
我用WindsorController工厂替换了ASP.NET ControllerFactory 我注册了所有的控制器和拦截器。直到这里一切都很顺利 现在,当我调试我的拦截器时,我总是从invocation.Method.Name中的ControllerBase获取Execute。我需要获取操作名称和操作参数来进行一些验证 如何在拦截器的拦截方法中获取操作名称和操作参数?ControllerBase_Execute方法及其参数的信息对我没有帮助 谢谢Asp.net mvc 2 如何获取动作名称?,asp.net-mvc-2,castle-windsor,aop,Asp.net Mvc 2,Castle Windsor,Aop,我用WindsorController工厂替换了ASP.NET ControllerFactory 我注册了所有的控制器和拦截器。直到这里一切都很顺利 现在,当我调试我的拦截器时,我总是从invocation.Method.Name中的ControllerBase获取Execute。我需要获取操作名称和操作参数来进行一些验证 如何在拦截器的拦截方法中获取操作名称和操作参数?ControllerBase_Execute方法及其参数的信息对我没有帮助 谢谢 Raphael Molesim我相信您可以
Raphael Molesim我相信您可以从RequestContext.RoutedData集合中获得。我认为方法/行动的关键是“行动”。比如:
requestContext.RouteData.Values["action"]
美好的它起作用了。但我对此并不满意。我想拦截真正的行动。现在我需要呈现一个错误,在我的拦截器方法中,我该怎么做?如果我有真正的控制器,我会做一些类似controller.ModelState.AddModelError()的事情,然后我可以做一些视图(model)。谢谢,拉斐尔·莫莱西,我不太清楚。您能提供一些拦截器的示例代码吗?它是如何集成在ControllerBase.Execute中的,它正在做什么,以及您希望它做什么?