I’ve been working on a rather large web application that requires a specific id param in the url for every page visited (for example, /controller/action/id?AccountId=23235325). This id has to be verified every time someone visits a page.
I want to reduce code replication as much as possible, and was wondering if there is a way to use an init method or constructor in a controller that inherits the MVC controller, and then have that controller extended by the others.
I’m using ASP.NET MVC 2.
Yes this is possible using either a base controller class that all your controllers inherit or by creating a custom attribute that you decorate your controller with.
Base controller:
Your controllers:
Custom Authorization Attribute:
On your controller(s):
You can combine both approaches to have another custom base controller class which is decorated with the
[AuthorizeAccountNumber]which your controllers that require verification inherit from.