ASP.NET MVC websites
The new Model View Controller software to enable the building of the most modern
feature rich websites and web applications.
ASP.NET MVC is a part of the ASP.NET Web application framework. It is one of the
two different programming models you can use to create ASP.NET Web applications,the
other being ASP.NET Web Forms. An MVC Application is designed and implemented using
the following three attributes
- Model: The model contains the core information for an application. This includes
the data and validation rules as well as data access and aggregation logic.
- View: The view encapsulates the presentation of the application, and in ASP.NET
this is typically the HTML mark-up.
- Controller: The controller contains the control-flow logic. It interacts with the
Model and Views to control the flow of information and execution of the application.
This separation of entity allows you to have nimbleness and flexibility in building
and maintaining your application. For example, by separating the views, you can
iterate on the appearance of your application without touching on any of the core
business logic. You can also separate work by role, so that, for example designers
can work on the views, while developers work on the model. ASP.NET MVC brings the
power of this development paradigm to ASP.NET development, allowing you to use your
.NET development skills to build MVC applications. It gives you
- Complete control over your HTML Markup
- Enables rich AJAX and jQuery integration
- Allows you to create SEO-friendly URLs for your site
- Makes Test Driven Development (TDD) easy ASP.NET
ASP.NET MVC 5 is available as a standalone framework that can be used with
ASP.NET 4.5.1 and Visual Studio 2015. ASP.NET MVC 5 is also available through
the installation of Visual Studio 2015 and can be used with ASP.NET 5. For an overview
of what is new in ASP.NET MVC 5 please see our What’s new in ASP.NET MVC 5 document
and refer to Scott Guthrie’s blog series on ASP.NET MVC 5.
- Areas: Allow you to organize your application in multiple logical pieces to improve
the team collaboration and development process.
- UI Helpers: You can ensure more maintainability as you modify your applications
using strongly-typed helpers such as Html.TexBoxFor. The new templated helpers let you easily associate
HTML elements for edit and display with data types improving productivity.
- Asynchronous controllers: Allows you to improve the throughput of your Web applications
without blocking threads on expensive, long running resource calls.
- Server-side validation: Allows you to use the declarative data annotations to define
validation rules on your model.
- Client-side validation: Automatically generates client-side validators based upon
the annotations on your model.