ASP.NET has been Microsoft’s web application development solution for the better part of the last 20 years. It’s a powerful open-source server-based web application development framework that provides developers with the tools to create robust web sites, services and applications.

Let’s take a closer look at ASP.NET and its different technologies which can be used to develop anything from simple web pages all the way to enterprise level web applications.

ASP.NET Architecture

ASP.NET includes three main development frameworks – Web Pages, Web Forms and Model View Controller (MVC). All three frameworks depend on the Microsoft .NET run time library. ASP.NET also uses standard web technologies such as HTML and Javascript and can be programmed in a variety of languages – most notably VB.NET and C#.

Web Pages are used to create dynamic user interfaces. Web Forms provides controls which execute on the web server allowing the elements of the UI to interact with data from the web server to provide an application-like experience. MVC is a standard design pattern that provides an alternative to ASP.NET Web Forms for applications involving larger development teams or more complex interfaces.  Let’s dive further into MVC to see how it works.

MVC Components

ASP.NET MVC includes three components. The model component implements the logic for the business rules and data access functions. The model typically defines the data objects and the data access routines. The view component encapsulates the presentation layer that displays the user interface. HTML controls and Javascript are used to provide the user with a way to view and interact with the data. The controller component responds to user interaction and provides the interface between the View and the Model. User interactions dispatched from the view are handled by the controller and transmitted to the model to either input or retrieve data.

Parallel Development

Since the MVC model separates the logic of an application into discrete parts with defined interfaces between each part, it can be an advantage for larger development teams. Separating the logic and design can help teams manage the complexity of a large application and allow specialization by functions.  For example, a graphic artist can design and build the user interface in the view section. One developer or team can create the objects necessary to communicate with the database and hold the data in the model component while another development team can focus on the controller component. All this work can be carried on simultaneously rather than having to wait for one developer to complete all of the work.


The MVC design pattern may produce a better product that can be released more quickly because the three components of an MVC application can be tested independently of each other. Test cases and scenarios can be executed for each component while rework is streamlined since errors can be resolved within the model, view or controller component independently.


Web Pages, Forms and MVC can all coexist in the same application. Developers can use the appropriate technology for the type of problem to be solved. All three methods run on ASP.NET and share some of the same development methods and patterns. ASP.NET provides software professionals with all the tools that they might require to create a web based application from beginning to end.


The best way to learn how these technologies work is to get professional training from a company like ONLC Training Centers. We have over 300 remote classroom sites around the country, and you can schedule ASP.NET classes at any of those or at a location that’s convenient for you. Check out our ASP.NET classes to see how MVC and the other .NET technologies can help you get started building applications today.

About The Author

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>