C# 12: Collection literals
Explains C# 12's new collection literals feature, a concise syntax for creating and merging collections and dictionaries.
Steven Giesel is a Senior Software Engineer and Microsoft MVP with over 13 years of experience, specializing in .NET and modern backend development. He shares deep technical knowledge across topics such as C#, EF Core, RavenDB, distributed systems, and cloud-native architectures, and is an active speaker in the .NET community.
323 articles from this blog
Explains C# 12's new collection literals feature, a concise syntax for creating and merging collections and dictionaries.
Explains the internal workings of the .NET List<T> class, focusing on its dynamic array implementation, resizing behavior, and performance considerations.
Explains the differences and use cases for Span<T>, Memory<T>, and ReadOnlySequence<T> in C# for high-performance memory access.
Explains the new TimeProvider abstraction in .NET 8 for mocking and controlling time in tests, making time-dependent code easier to test.
Introduces the new terminal logger in .NET 8 Preview 4, highlighting its cleaner, colored output and how to use it.
Explains the new enhancement to the C# 12 `nameof` operator, allowing access to instance members from a static context.
Explains how .NET 6's TryGetNonEnumeratedCount method works to get an element count without enumeration, using internal interfaces like IIListProvider.
A guide to six practical C# extension methods for IEnumerable, including IsNullOrEmpty, Partition, Median, and Mode.
Explores practical uses of C# ValueTuple for swapping values, pattern matching, deconstruction, and implementing IEquatable to write cleaner code.
A developer shares their personal journey, process, and benefits of becoming a Microsoft MVP, focusing on community contributions and consistency.
Explains how to use ordered indexes in Entity Framework 7 for database query optimization, including performance benefits and implementation.
A guide to configuring log levels in ASP.NET Core applications using the appsettings.json file and namespace-specific settings.
A guide to verifying .NET dependency injection containers to catch missing registrations and captive dependencies at startup.
A tutorial on creating custom validation attributes in ASP.NET Core to implement complex data validation rules.
Explains how to use the Unit of Work pattern with domain events in a .NET DDD application to ensure data consistency.
Explains covariance and contravariance in C# generics with practical examples from the .NET Framework.
Explores performance improvements in .NET 8 Preview 3, comparing benchmarks for string operations and other features against .NET 6 and 7.
A guide to five practical C# extension methods for enhancing Task<T> operations, including fire-and-forget, retry, and timeout patterns.
Explains how to use C# source generators with regular expressions in .NET 7+ for improved performance and debuggability.
Explores using SIMD instructions and Vector<T> to accelerate LINQ queries in C# for high-performance data processing.