Q:What are the 3 main components of an ASP.NET MVC application?
A1. M - Model
2. V - View
3. C - Controller
Q:In which assembly is the MVC framework defined?
A:System.Web.Mvc
Q:Is it possible to combine ASP.NET webforms and ASP.MVC and develop a single
web application?
A:Yes, it is possible to combine ASP.NET webforms and ASP.MVC and develop a single
web application.
Q:What does Model, View and Controller represent in an MVC application?
A:Model: Model represents the application data domain. In short the applications business logic is
contained with in the model.
View: Views represent the user interface, with which the end users interact. In short the all the user
interface logic is contained with in the UI.
Controller: Controller is the component that responds to user actions. Based on the user actions,
the respective controller, work with the model, and selects a view to render that displays the user
interface. The user input logic is contained with in the controller.
Q:What is the greatest advantage of using asp.net mvc over asp.net webforms?
A:It is difficult to unit test UI with webforms, where views in mvc can be very easily unit tested.
Q:Which approach provides better support for test driven development - ASP.NET MVC or
ASP.NET Webforms?
A:ASP.NET MVC
Q:What are the advantages of ASP.NET MVC?
A:1. Extensive support for TDD. With asp.net MVC, views can also be very easily unit tested.
2. Complex applications can be easily managed
3. Seperation of concerns. Different aspects of the application can be divided into Model, View
and Controller.
4. ASP.NET MVC views are light weight, as they donot use viewstate.
Q:Is it possible to unit test an MVC application without running the controllers in an ASP.NET
process?
A:Yes, all the features in an asp.net MVC application are interface based and hence mocking is
much easier.So, we don't have to run the controllers in an ASP.NET process for unit testing.
Q:Is it possible to share a view across multiple controllers?
A:Yes, put the view into the shared folder. This will automatically make the view available across
multiple controllers.
Q:What is the role of a controller in an MVC application?
A:The controller responds to user interactions, with the application, by selecting the action method
to execute and alse selecting the view to render.
Q:Where are the routing rules defined in an asp.net MVC application?
A:In Application_Start event in Global.asax