If I have an instance of ActionExecutingContext how might I get the MethodInfo of the
action in question?
If I have an instance of ActionExecutingContext how might I get the MethodInfo of
Share
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
ActionExecutingContext has a property ActionDescriptor.
If the return type is actually a ReflectedActionDescriptor you should be able to cast is as such. Once you have a ReflectedActionDescriptor…
http://msdn.microsoft.com/en-us/library/system.web.mvc.reflectedactiondescriptor.aspx
… you can use it’s MethodInfo property…
http://msdn.microsoft.com/en-us/library/system.web.mvc.reflectedactiondescriptor.methodinfo.aspx
You should be careful using techniques that take the action’s name and use this to obtain a MethodInfo. In many cases the name of an action will be the same as the method name on the controller, but this will not always be the case. If you use the ActionName attribute on the controller’s method then you can explicitly set the name of the action. In addition, it is possible to have 2 methods with different signatures, both with the same action name. This is common when you have a GET and POST version of the same action (e.g. the Register and LogOn actions present in a brand new ASP.NET MVC project within AccountController.cs).