MVC falls under architectural pattern and is primarily concerned with UI and interaction logic separation. The other layers of the 3 tier will still be applicable.
The most common MVC frameworks usually follow a Front Controller pattern. i.e. rather than request getting landed to a specific page, the request is routed to a common front controller, whose sole responsibility is to invoke the specific requested controller
based on information passed in the querystring or as part of the request.
Ideally the controller should be as thin as possible and its sole responsibility should be to infer the request and call appropriate business or data access service. There shouldn't be any business specific logic in the controller.
My recommendation is to look at the ASP.NET MVC implementation for more information as this is built on the industry adopted best practices...
I blog at http://rajeshpillai.net and have a community startup http://ownabook.org/
(Don't forget to click "Mark as Answer" on the post(s) that helped you.)
thinkrajesh
Participant
1356 Points
232 Posts
Re: Difference between MVC controller and business logic (3 tier)
Mar 17, 2012 12:09 PM|LINK
MVC falls under architectural pattern and is primarily concerned with UI and interaction logic separation. The other layers of the 3 tier will still be applicable.
The most common MVC frameworks usually follow a Front Controller pattern. i.e. rather than request getting landed to a specific page, the request is routed to a common front controller, whose sole responsibility is to invoke the specific requested controller based on information passed in the querystring or as part of the request.
Ideally the controller should be as thin as possible and its sole responsibility should be to infer the request and call appropriate business or data access service. There shouldn't be any business specific logic in the controller.
My recommendation is to look at the ASP.NET MVC implementation for more information as this is built on the industry adopted best practices...
(Don't forget to click "Mark as Answer" on the post(s) that helped you.)