SStepOneinsteponeit.hashnode.dev·18h ago · 23 min readGeneric Math in C#: The Complete GuideGeneric Math is easy to dismiss as a feature for numerical libraries. Its more important contribution is static abstraction: generic code can require operators, identities, parsing, and other type-lev00
SStepOneinsteponeit.hashnode.dev·19h ago · 13 min readAutoFixture and AutoData: Reduce .NET Test SetupA unit test can spend more lines constructing irrelevant objects and mocks than expressing the behavior it protects. That Arrange boilerplate slows reviews, obscures the important inputs, and becomes 00
SStepOneinsteponeit.hashnode.dev·Sep 4 · 18 min readC# Concurrent Collections: A Practical GuideChoosing a thread-safe collection is not simply a matter of replacing Dictionary<TKey, TValue> with ConcurrentDictionary<TKey, TValue>. The right choice depends on the operations you need to make atom00
SStepOneinsteponeit.hashnode.dev·Sep 4 · 11 min readHow to Consume Rate-Limited APIs in .NETAn outbound integration can be perfectly healthy and still fail under load because your client exceeds the provider's request quota. Retrying every 429 Too Many Requests response often makes the burst00
MAMario Alberto Arceinpowercsharp.hashnode.dev·Sep 2 · 6 min readThe Cache FamilyProblem .NET already gives you IMemoryCache and IDistributedCache. Both are well-designed for what they are. Neither is an application-level abstraction — they're platform abstractions, and your servi00
SStepOneinsteponeit.hashnode.dev·Sep 1 · 6 min readPolymorphic Dependency Injection in .NET: The Complete GuideRegistering several implementations of one interface is easy. Injecting the correct implementation into each consumer—without service location, conditionals, or a growing factory—is the part that expo00
SStepOneinsteponeit.hashnode.dev·Aug 31 · 9 min readAutoMapper in .NET: When You May Not Need ItAutoMapper can remove repetitive member-to-member assignments, but it also moves mapping behavior away from ordinary C# code. That trade affects navigation, static analysis, debugging, performance, tr00
MAMario Alberto Arceinpowercsharp.hashnode.dev·Aug 18 · 7 min readFoundation: Core, Extensions, Utilities, Helpers, CompatibilityProblem For most of twenty years across .NET Framework 1.1 through .NET 8, I wrote the same handful of things in every codebase: a null check before a string operation, a DayOfWeek comparison to detec00
Qqodorsinqodors.hashnode.dev·Aug 5 · 7 min readStill Adding ConfigureAwait(false) To Everything? You have probably seen ConfigureAwait(false) added after almost every await in older .NET codebases. It became one of those rules developers followed without questioning — add it everywhere, and async00
Sspipaliya8insudhirpipaliya.hashnode.dev·Jul 29 · 4 min readExecuteUpdate vs SaveChanges in EF Core: Which One Should You Use?Introduction If you've been working with Entity Framework Core, you've probably used SaveChangesAsync() to persist updates to the database. However, starting with EF Core 7, Microsoft introduced Execu00