Sponsored by Nick Chapsas—Want to learn how to build elegant REST APIs in .NET? Get 5% off Nick's latest course "From Zero to Hero: REST APIs in .NET"!
My new book ASP.NET Core in Action, Third Edition is available now! It supports .NET 7.0, and is available as an eBook or paperback.
Behind [LogProperties] and the new telemetry logging source generator
In this post I look at the new Microsoft.Extensions.Telemetry.Abstractions logging source generator, the generated code, and the [LogProperties] attribute…
Understanding your middleware pipeline in .NET 6 with the Middleware Analysis package
In this post I introduce the Microsoft.AspNetCore.MiddlewareAnalysis package and show how to use it to visualise the middleware in your .NET 6 apps.…
Consuming anonymous types with DiagnosticListener in .NET 6
In this post I look at how to consume DiagnosticListener events where the object is an anonymous type, and so can't be cast to a named Type.…
A brief introduction to DiagnosticSource
In this post I describe the DiagnosticSource infrastructure, how it compares to other logging APIs, and how to use it to listen to framework events…
Source generator updates: incremental generators
Exploring .NET 6 - Part 9
In this post I look at the updates to the source generator API in .NET 6, why the changes were made, and how to update your source generators to use them.…
Improving logging performance with source generators
Exploring .NET 6 - Part 8
In this post I look at the subtleties of using ILogger and discuss the new source generator that can give performance benefits without the boilerplate…