Book Image

Customizing ASP.NET Core 6.0 - Second Edition

By : Jürgen Gutsch
Book Image

Customizing ASP.NET Core 6.0 - Second Edition

By: Jürgen Gutsch

Overview of this book

ASP.NET Core is packed full of hidden features for building sophisticated web applications – but if you don’t know how to customize it, you’re not making the most of its capabilities. Customizing ASP.NET Core 6.0 is a book that will teach you all about tweaking the knobs at various layers and take experienced programmers’ skills to a new level. This updated second edition covers the latest features and changes in the .NET 6 LTS version, along with new insights and customization techniques for important topics such as authentication and authorization. You’ll also learn how to work with caches and change the default behavior of ASP.NET Core apps. This book will show you the essential concepts relating to tweaking the framework, such as configuration, dependency injection, routing, action filters, and more. As you progress, you'll be able to create custom solutions that meet the needs of your use case with ASP.NET Core. Later chapters will cover expert techniques and best practices for using the framework for your app development needs, from UI design to hosting. Finally, you'll focus on the new endpoint routing in ASP.NET Core to build custom endpoints and add third-party endpoints to your web apps for processing requests faster. By the end of this book, you'll be able to customize ASP.NET Core to develop better, more robust apps.
Table of Contents (18 chapters)

Setting up Kestrel

After WebHostBuilder is created, we can use various functions to configure the builder. Here, we can see one of them, which specifies the Startup class that should be used.

Note

As discussed in Chapter 4, Configuring and Customizing HTTPS with Kestrel, Kestrel is one possibility when it comes to hosting your application. Kestrel is a web server built into .NET and based on .NET socket implementations. Previously, it was built on top of libuv, which is the same web server that is used by Node.js. Microsoft removed the dependency to libuv and created their own web server implementation based on .NET sockets.

In the last chapter, we saw the UseKestrel method to configure the Kestrel options:

.UseKestrel((host, options) =>
{
    // ...
})

This first argument is WebHostBuilderContext to access already-configured hosting settings or the configuration itself. The second argument is an object to configure Kestrel. This code snippet shows...