- 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.

Safety and simplicity with LINQ
Working with the result pattern - Part 2
In this post I show how to clean up unreadable Switch()-based result pattern code using LINQ query syntax, giving both readability and safety…

Replacing Exceptions-as-flow-control with the result pattern
Working with the result pattern - Part 1
In this post I discuss why you might want to use the result pattern, demonstrate it with a simple example and show a naïve, ugly, solution…

Working with the result pattern
In this series I provide a brief introduction to the result pattern, show how to use it, and how to use LINQ to reduce the boilerplate it introduces…

Preventing breaking changes in public APIs with PublicApiGenerator
In this post I show how you can use the PublicApiGenerator project to document your public API and build a snapshot unit test to prevent breaking changes…

Working with tar files in .NET 8
In this post I show how to create, extract, and list tar files using the built-in tar support introduced in .NET 7, and discuss some of the limitations…
![Banner image for Simplifying [Theory] test data with Xunit.Combinatorial](/content/images/2024/xunit_combinatorial_banner.png)
Simplifying [Theory] test data with Xunit.Combinatorial
In this post I show how you can simplify your xUnit [Theory] tests using the Xunit.Combinatorial package to auto-generate your test parameters…

