Book Image

Customizing ASP.NET Core 5.0

By : Jürgen Gutsch
Book Image

Customizing ASP.NET Core 5.0

By: Jürgen Gutsch

Overview of this book

ASP.NET Core is the most powerful Microsoft web framework. Although it’s full of rich features, sometimes the default configurations can be a bottleneck and need to be customized to suit the nature and scale of your app. If you’re an intermediate-level .NET developer who wants to extend .NET Core to multiple use cases, it's important to customize these features so that the framework works for you effectively. Customizing ASP.NET Core 5.0 covers core features that can be customized for developing optimized apps. The customization techniques are also updated to work with the latest .NET 5 framework. You’ll learn essential concepts relating to optimizing 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 application development book, you’ll have the skills you need to be able to customize ASP.NET Core to develop robust optimized apps.
Table of Contents (15 chapters)

Using a different ServiceProvider type

Changing to a different or custom DI container is relatively easy if the other container already supports ASP.NET Core. Usually, the other container will use IServiceCollection to feed its own container. The third-party DI containers move the already registered services to the other container by looping over the collection:

  1. Let's start by using Autofac as a third-party container. Type the following command into your command line to load the NuGet package:
    dotnet add package Autofac.Extensions.DependencyInjection

    Autofac is good for this because you are easily able to see what is happening here.

  2. To register a custom IoC container, you need to register a different IServiceProviderFactory interface. In that case, you'll want to use AutofacServiceProviderFactory if you use Autofac. IserviceProviderFactory will create a ServiceProvider instance. The third-party container should provide one, if it supports ASP.NET Core.

    You should...