Learn Minimal APIs from start to finish. Perfect for beginners.

.NET tutorials

How do you resolve scoped services in a background service?
How do you resolve scoped services in a background service?

Learn how to resolve scoped and transient services in an ASP.NET Core background service by creating a new scope and how it can also be used for multithreading.

GetService or GetRequiredService in IServiceProvider?
GetService or GetRequiredService in IServiceProvider?

Find out whether you should use the GetService or GetRequiredService method in the IServiceProvider type to resolve a service from ASP.NET Core dependency injection.

Use keyed services for multiple implementations of a service
Use keyed services for multiple implementations of a service

Learn how to add and inject keyed services into an ASP.NET Core application so you can add multiple implementations of the same services.

How to inject services in ASP.NET Core dependency injection
How to inject services in ASP.NET Core dependency injection

We'll show you how to use dependency injection to inject services into controllers, minimal APIs, Razor views and middleware in an ASP.NET Core application.

ASP.NET Core dependency injection lifetimes explained
ASP.NET Core dependency injection lifetimes explained

Learn the difference between singleton, scoped and transient service lifetimes in ASP.NET Core dependency injection, with examples of when to use each one.

Use EF Core to easily save dates as UTC & show in local time
Use EF Core to easily save dates as UTC & show in local time

Learn how to create a ValueConverter in Entity Framework Core to save dates as UTC in the database & convert them back to your local time zone in ASP.NET Core.

How do you write a Dockerfile for an ASP.NET Core app?
How do you write a Dockerfile for an ASP.NET Core app?

Learn how to Dockerize an ASP.NET Core Web API by writing a Dockerfile to restore, build and publish your .NET application to a Docker container.

Static asset file sizes can be reduced by over 80% in .NET 9
Static asset file sizes can be reduced by over 80% in .NET 9

Static asset delivery optimisation in .NET 9 uses Brotli and Gzip compression for static asset files which can reduce the file size by over 80%.

What's new in .NET 9? Key features you need to know!
What's new in .NET 9? Key features you need to know!

Discover the latest updates in .NET 9. Explore new features, enhancements, and tools that you can use in your ASP.NET Core application right now!

C# 13 - New features and how you can use them now!
C# 13 - New features and how you can use them now!

C# 13 has been launched as part of the .NET 9 release and we'll take a look at the new features and how you can start using them today.