Controller Creation
You are not going to enter the MVC pipeline, you are on your own now MvcHandler
Custom
3
MvcRouteHandler DependencyResolver finds and create instance of Controller
Controller Factory
Routing
2
Evaluate requested URL against route Definition (including iRouteConstraint)
is the route valid? Yes IRouteHandler Controller No ControllerActionInvoker ActionInvoker Custom You are getting out of the default MVC workflow. You have to handle action and result execution by yourself
Action Execution
1
The response is returned to the browser
Result Execution
Result Filters (OnResultExecuted ) are executed IValidateObject Model Binder de-serializes parameters Validation logic
View rendering
Model Validation Provider Retrieves validation rules Validation rules
Authorization Filters
are executed
Validation rules
11
Model Validation Provider Retrieves model visualization info
is authorized?
Filters
Yes
Validation rules
IView
10
Execution stopped?
9
Yes
No Filters
ViewResult
8
Action is executed
Other Kind
ActionResult
Filters Filters
Note: All the extensibility points are in bold For clarity, the DependencyResolver is in 3 different boxes, because it retrieves 3 different types of objects, but it is always the same object. All the "helper objects' (the dependency resolver , the various providers etc) are outside the main execution flow to show their status as helpers to the main process.