Bootstrapping ASP.NET MVC


Architecturally speaking, the most relevant fact about ASP.NET Core is that it is a true web framework that just enables developers to build HTTP frontends. It doesn’t force you to a particular application model. In the past, classic ASP.NET was offered as a web framework with a specific application model simply bolted on, whether Web Forms or MVC.

ASP.NET Core has open middleware for you to plug in and receive and process incoming requests to your liking. In ASP.NET Core you can effectively have code that sits there over the communication port, captures any requests and returns responses. It could just be you, HTTP, and your code with no intermediaries. At the same time, though, you can enable a more sophisticated application model like MVC. When you do so, some side tasks become necessary such as defining the URL templates that your application will recognize and the components responsible for handling those requests. In this chapter, we focused on URL templates and request routing. In Chapter 4, we move on to controllers for actual request processing.