ASP.NET Core is an open source and cloud-optimized web framework for developing modern web applications that can be developed and run on Windows, Linux and the Mac. It includes the MVC framework, which now combines the features of MVC and Web API into a single web programming framework.
ASP.NET Core comes with the following advantages:
With ASP.NET Core, you can get the following improvements:
Once you have installed the Visual Studio 2015 tooling, you can start building a new ASP.NET Core Application from the File > New Project menu option.
On the New Project dialog box, you will see the following three different templates for Web projects:
Runs on the standard .NET Framework on Windows.
In the left pane, select Templates > Visual C# > Web and in the middle pane select the ASP.NET Core Web Application (.NET Core) template. Let us call this application FirstAppDemo and also specify the Location for your ASP.NET Core project and then Click OK.
Here, we will start with an empty template. This would help us build it from scratch. Let us select the Empty template, turn off the Host in the cloud and click OK.
FirstAppDemo.sln is a solution file. Visual Studio has used this extension for years by default, and you can double-click on the file if you want to open the app in Studio and work on it. There is also a global.json file. Let us open this file in Visual Studio.
Globalization is the process of designing apps that support different cultures. Globalization adds support for input, display and output of a defined set of language scripts that relate to specific geographic areas.
Localization is the process of adapting a globalized app, which you have already processed for localizability, to a particular culture/locale
Middleware is software that's assembled into an app pipeline to handle requests and responses. Each component:
Request delegates are used to build the request pipeline. The request delegates handle each HTTP request.
Request delegates are configured using Run, Map, and Use extension methods. An individual request delegate can be specified in-line as an anonymous method (called in-line middleware), or it can be defined in a reusable class. These reusable classes and in-line anonymous methods are middleware, also called middleware components. Each middleware component in the request pipeline is responsible for invoking the next component in the pipeline or short-circuiting the pipeline. When a middleware short-circuits, it's called a terminal middleware because it prevents further middleware from processing the request.
Run Delegate: Adds a terminal middleware delegate to the application's request pipeline.
Map Delegate: Will Update Soon
Use Delegate: Will Update Soon
The ASP.NET Core request pipeline consists of a sequence of request delegates, called one after the other. The following diagram demonstrates the concept. The thread of execution follows the black arrows.
The following diagram shows the complete request processing pipeline for ASP.NET Core MVC and Razor Pages apps. You can see how, in a typical app, existing middlewares are ordered and where custom middlewares are added. You have full control over how to reorder existing middlewares or inject new custom middlewares as necessary for your scenarios.
Hope it helps you.