Enhance your .NET Testing

FluentAssertions is the Swiss Army knife of assertion libraries for .NET developers. If you want to supercharge your tests to make them more expressive, readable, and robust, this is the tool to have in your arsenal.

Tell me if you’ve heard this one before. You spend months working with UI and UX experts, building what you think is the most optimal means of displaying business information. You sit in a meeting with your stakeholders, demoing what you created. Everything feels great, but then silence fills the room. A lone stakeholder raises their voice, “This is all great, but can we get it in a PDF?”.

Today, I want to show you how to publish your Docker images using the .NET SDK to GitHub Container Registry using GitHub Actions. It brings us to the next level of automation.

JSON is a very forgiving format for transmitting information. It’s rigid in its structure, but there are no rules in terms of the content.

A friend reached out recently regarding the usage of Task Parallel Library (TPL) and ConcurrentBag in some .NET code. I inquired what the code was doing and it turns out that for each entry in some workload, it was performing some database operations and API calls. I immediately wondered if using .NET’s System.Threading.Channels (STC) wouldn’t be a better choice: likely higher throughput and easier to program.

In ASP.NET Core 8, Microsoft added a new authentication handler named BearerToken. In this blog post, I will explain how it works and its purpose. This handler is part of a bigger push by Microsoft to simplify authentication in ASP.NET Core, but in this blog post, we will focus on this handler.

In this post I take a look at an apparently simple enhancement to logging introduced along with .NET 8: the [LogProperties] attribute. This attribute can make it easier to log additional state in your log messages as you'll see later. While looking into the specifics of how this new attribute works, I discovered bigger changes to the logging source generator.

Do you ever read code and find it hard to understand? You may be experiencing cognitive load!

Reply

or to participate.