What is ASP.NET?
ASP.NET is the Microsoft development platform allowing the creation of web applications.
Even if we are going to create websites, .NET is not the abbreviation of the Internet, but corresponds, you can imagine, to the .NET framework.
What is called “platform” here is a set of components for building a web application? When we build a house, we need land, a site manager, building materials, a construction plan, tools, and know-how (and surely other things). Well to make a web application, it’s a bit the same principle, we need (among others):
- A development tool.
- A functionality box to develop.
- From logic of development.
- A programming language.
The development tool is Visual Studio (and includes a free version called “Visual Studio Express for the web”). It is the software that will allow us to create the website and that will provide us with the tools to orchestrate our developments. He is a bit the site manager of ASP.NET.
The functionality box is the “.NET framework”, which includes different types of functionality:
- so-called general functionalities which will be used for all applications using the .NET framework, whether web or Windows applications, telephony, games, etc.
- specific features for website creation: this is ASP.NET. In our site, the .NET framework would represent the materials found in any site, bricks, cement, etc. while ASP.NET would represent a material specific to a type of construction, for example, the liner to build a swimming pool.
The development logic would correspond somewhat to the construction plan. It provides a blueprint for building a website. ASP.NET offers us two logics to build a web application: WebForms and MVC. In this course, we will focus on the logic of MVC development.
MVC and WebForms
We can roughly say that ASP.NET is broken down into two main parts (the famous logic!), Namely:
- NET WebForms
- NET MVC
ASP.NET is the foundation of the Microsoft development platform for building web applications. WebForms and MVC are two different development logics that are built on top of the foundation of ASP.NET.
ASP.NET WebForms was created in 2002 and is now in version 5. It is a mature platform which has proven itself and which is widely used in the professional world. Originally, ASP.NET WebForms was created by Microsoft so that Windows application developers can easily build web applications from their knowledge of the Windows development environment. Thus, ASP.NET WebForms has a whole mechanic which allows to abstract as much as possible the web model so that developers have the impression of finding themselves in the development conditions of a Windows application. This implies a certain logic of development. ASP.NET WebForms applications approximate an event model, that is to say, that each component of a page is capable of reacting to a user action. The ASP.NET WebForms model also allows you to keep the state of a page, something that the HTTP protocol does not allow.
HTTP is the acronym for HyperText Transfer Protocol. It is a client-server communication protocol that allows you to consult a website from an Internet browser. The principle is that the browser makes a request to the website via this protocol and the website sends back a response which is the content of the page that the browser wants to display. This protocol is stateless, that is to say, that the requests are independent of each other and that no information specific to a request is kept.
ASP.NET WebForms is a very powerful development logic for building web applications. It adds a layer of abstraction that surprises its users every day. This layer of abstraction makes it possible to mask the complexity of the work to be carried out as well as all the specificities of the programming of web applications which we will discover later. ASP.NET WebForms also provides many server controls for generating HTML. For example, in a few lines of code, we can generate a complete grid displaying data, managing multiple pages, sorts, etc. But all of this comes at a cost: complex page lifecycle, less control over generated HTML, a slot of effort to get around certain limitations, etc.
ASP.NET MVC is more recent and appeared in 2009. This way of thinking about the creation of web applications is based on a very famous design pattern, MVC (from the English “model-view-controller”), which has existed since 1979.
Why use ASP.NET MVC?
This is an important question to ask! There is no right and wrong way to design websites with ASP.NET, both are good and depend on your needs. Do you need to create your own control, to reuse it in several places, or to sell it? You don’t know anything about the web but you know how to program Windows applications?
Then ASP.NET WebForms is for you! Its event model and its abstraction from the HTTP protocol will delight you and allow you to be quickly effective. ASP.NET WebForms has the advantage of having many advanced controls: a complex grid, a treeview or many other things which require very little code to function and which are reusable as desired.
ASP.NET WebForms benefits from all the maturity of a solid platform, massively used by professionals. ASP.NET MVC, more recent, is less mature even if it is already in its version 5 and that Microsoft has invested a lot on the subject.
I told you about a development platform (ASP.NET), and its two different logics for creating a website (WebForms and MVC). This is called One ASP.NET. It is the possibility of activating these bricks independently or together in our different projects. This is an interesting feature that does not bind us to a technical base from the construction of the project.
About the author
DMTwebhosting.com’s Editorial Team prides itself on bringing you the latest web hosting news and the best web hosting articles!
You could also link to the news and articles sections: