Simplifying Dependency Injection
Dependency Injection (DI) is a cornerstone of modern .NET applications, ensuring loose coupling, testability, and maintainability. However, traditional DI configurations can quickly become verbose and boilerplate-heavy. Developers often find themselves manually registering every service, leading to cluttered Program.cs
files and a tedious onboarding experience. Campsis.AutoInject comes to the rescue!
Fluent Builder Pattern in C#
The Fluent Builder pattern is a powerful tool in your C# toolbox. When implemented correctly, it can significantly improve the readability and maintainability of your code.
Understanding Memory<T>
Modern applications often require handling large datasets efficiently without unnecessary data copying. C# introduced Memory<T>
as a versatile tool for optimizing memory management. Here we will explore how Memory<T>
solves common issues and its advantages over traditional approaches.
Aggregating Data with LINQ in .NET9
.NET9 has introduced two new LINQ methods, CountBy
and AggregateBy
, making data aggregation easier and more efficient without the need for complex intermediate steps like GroupBy
.
Inline Lambdas with LINQ in C# 13
Reduce verbosity by simplifying lambda expressions with inline syntax
Parameter Null Checking in C# 11
Get ride of common boilerplate code to validate if the method arguments are null with C# 11.
The magic of LINQ
Practical LINQ: Calculate the duration of whole music album
How to return Yield Results in Async Operations
How to return Yield Results in Async Operations thanks to IAsyncEnumerable in C#
Performance increase in LINQ 7
Microsoft used Span and hardware acceleration to work with vectors in order to improve LINQ performance in .NET 7 dramatically.