- Loading...
Sponsored by Dometrain Courses—Get 30% off Dometrain Pro with code ANDREW30 and access the best courses for .NET Developers

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.

Creating standard and "observable" instruments
System.Diagnostics.Metrics APIs - Part 3
In this post I discuss the various Instrument<T> types exposed by the System.Diagnostics.Metrics API and show examples from the .NET libraries and ASP.NET Core…

Exploring the (underwhelming) System.Diagnostics.Metrics source generators
System.Diagnostics.Metrics APIs - Part 2
In this post I explore the source generators shipped in Microsoft.Extensions.Telemetry.Abstractions, explore the code, and discuss whether I would use them…

Creating and consuming metrics with System.Diagnostics.Metrics APIs
System.Diagnostics.Metrics APIs - Part 1
In this post I provide an introduction to the System.Diagnostics.Metrics API, and show how to create a custom metric and read it with dotnet-counters…

Making foreach on an IEnumerable allocation-free using reflection and dynamic methods
In this post I describe why foreach sometimes allocates, and show how you can use DynamicMethod and Reflection.Emit to go allocation-free…

The Windows File Explorer replacement, File Pilot, is awesome
In this post I describe my experience with the Windows File Explorer replacement, File Pilot. It's blazingly fast, feature rich, and has hotkeys everywhere…
in Tools
Recent updates to NetEscapades.EnumGenerators: new APIs and System.Memory support
In this post I describe some recent changes to the NetEscapades.EnumGenerators source generator, including support for the System.Memory package and new APIs…

