Build internal tools 10x faster with Retool
this week's favorite
In a recent article, I wrote and demonstrated how to speed up logging using LoggerMessage in .NET. Not long after I wrote that article, I learned of an even faster way to log using .NET 6. This article will show you how you can use this new way of logging and show the results of benchmark tests.
Leveraging trimming to make the Microsoft Store faster and reduce its binary size
In our previous blog post about the new Microsoft Store, we talked about how it’s a native C#/XAML Windows application running on the UWP framework, and how it leverages .NET Native to be distributed as a 100% AOT binary with great startup performance. We also discussed how we’ve been working to refactor the codebase to make it faster, easier to maintain, and to work almost entirely in C# running on the .NET runtime.
Understanding your middleware pipeline .NET 6 with the Middleware Analysis package
In this post I introduce the Microsoft.AspNetCore.MiddlewareAnalysis package, and how you can use it to visualise the middleware pipeline of your ASP.NET Core apps. In this post I show how to use it with a .NET 6 WebApplication app.
The Best C# .NET Web Application Tech Stack: Choosing The Back End
Did you notice that Microsoft announces a new and amazing web development framework each year? This year we had Minimal API hosting, before that we had Blazor, and before that we had ASP.NET Core. My point is that as the years go by, we get more and more technologies, and it’s getting hard to keep track of them all. In this article series, we’ll go over all the ways to build a web application using Microsoft technologies and try to make some order in the mess. Our constraint is to use .NET and Azure.
Nondestructive Mutation and Records in C#
In this article, we will discuss nondestructive mutation: What does it mean to mutate an object without destroying it, and how do we implement it using records or classes that are not records in C#.