The history of ASP.NET 

It all began with Active Server Pages in the mid-nineties, with Microsoft trying to keep up to date with the buzz of serving dynamic content over the web at that time, and that obviously influenced the name Active Server Pages, conventionally known today as ASP.

As with any worthwhile technology, ASP.NET has been evolving over time with one of the major shifts being the introduction of ASP.NET Web Forms around the year 2002, which was influenced heavily by the success of another one of Microsoft's application frameworks meant for the desktop environment, called Windows Forms, or more commonly known as WinForms.

With the ease of creating HTML forms and controls in WinForms came a lot of baggage of unnecessary HTML and JavaScript that slowed down page loading, along with other factors such as view state and page life cycle that contributed further to slowing down business applications. This led to the introduction of a series of ASP.NET MVC versions that tried to solve some of the problems that ASP.NET Web Forms had.

ASP.NET MVC also helped to cater to one of the major tenets of good programming practices in preferring separation of concerns (SoC) over the tight coupling that was evident in ASP.NET Web Forms with its code-behind files. This had in itself introduced ripple benefits in allowing for test-driven development and improving testability in general.

Another major shift happened in 2016 with the release of ASP.NET Core in its first version, 1.0, which has continued to evolve up to version 3 at the time of writing this book (2019). In this shift, Microsoft almost completely rewrote ASP.NET, mainly removing its dependency on the System.Web namespace, which necessitated a reliance on Internet Information Services (IIS). Since IIS is compatible only with the Windows operating system, independence from it allowed ASP.NET Core to be truly cross-platform.

It must be mentioned that Microsoft embraced open source visibly from around the year 2014 with a change in business dynamics and while one of the biggest selling points of ASP.NET Core is that it is open source, we need to be aware that even the previous versions of ASP.NET, including MVC and the web API, were also eventually released as open source, and anyone can contribute to their continued development:

Before version 3, ASP.NET Core applications ran on the .NET Core framework as well as on full .NET Framework, but a decision was made by Microsoft that, starting from version 3, ASP.NET Core would run only on .NET Core, to make better use of new developments, without being tied down to catering for old functionality.

In the following diagram, you can see how the different .NET Framework versions and components work together: 

This book is about ASP.NET Core, and more specifically, its latest version, 3 (at the time of writing). Therefore, the brief mention earlier of the previous versions suffices to just give us context, but from now on, we will focus a bit more on ASP.NET Core.

Our focus in this book remains ASP.NET Core 3, which is different from .NET Core 3; the former being an application framework and the latter being a runtime. An ASP.NET Core application is traditionally able to run on .NET Core as well as other .NET Framework versions, and that underlines the fact that they are different.

It is easy to see why some people confuse the two because an ASP.NET Core application can also be a .NET Core application, the same way it can be a .NET Framework 4.8 application.

It is quite important to note when making decisions about what framework to use for developing new applications that Microsoft has plans for future releases of ASP.NET Core to only run on .NET Core and not other .NET Framework versions.

Having looked at a brief history of ASP.NET Core 3, let's have a look at the features that define the application framework in the next section. 

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.117.72.165