The TimeProvider abstract class can be used in xUnit unit tests to mock the time and a timer using the FakeTimeProvider in .NET 8.
Learn how collection expressions and the spread operator work in C#, with examples of how to use them to simplify lists and arrays in .NET.
Learn the difference between Server and WebAssembly render modes in Blazor, how to set them globally or per component, and when to use each one in .NET.
Server-side rendering (SSR) is a render mode which has become a new Blazor feature for .NET 8, working in a similar way to ASP.NET Core MVC.
Primary constructors is a C# 12 feature that allows to add parameters to a class and includes dependency injection support.
.NET 8 brings keyed services, a dependency injection update for creating the same service with a different implementation in the IoC container.