- Loading...
-
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.
-
Using default interface methods for performance gains in IHeaderDictionary
In this post I look at an example of how default interfaces were used to improve the performance of IHeaderDictionary…
-
A brief look at StringValues
In this post I look at the StringValues type, where it's used in ASP.NET Core, why it's useful, how it's implemented, and why.…
-
ValueStringBuilder: a stack-based string-builder
A deep dive on StringBuilder - Part 6
In this post I discuss the ValueStringBuilder type, used internally in .NET as a zero/low-allocation alternative to StringBuilder…
-
Reducing allocations by caching with StringBuilderCache
A deep dive on StringBuilder - Part 5
In this post I look at the internal StringBuilderCache type, benchmark it against a StringBuilder, and walk through the code to show how it works.…
-
Inserting and removing characters
A deep dive on StringBuilder - Part 4
In this post we look at the Insert() and Remove() functions, which can involve tricky manipulations of chunks in the middle of the linked list…
-
Converting chunks to a string with ToString()
A deep dive on StringBuilder - Part 3
In this post I look at StringBuilder.ToString(), show how multiple chunk arrays are converted to a string, and compare it to .NET Framework's approach.…