Redux Pattern in Blazor
Explains how to implement the Redux state management pattern in a Blazor application, covering actions, reducers, and side effects.
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.
311 articles from this blog
Explains how to implement the Redux state management pattern in a Blazor application, covering actions, reducers, and side effects.
Explores a C# technique to allocate class instances on the stack using unsafe code, comparing performance and limitations.
Explains C# 8's default interface methods, including how to define private methods within an interface and their usage.
A tutorial on integrating TailwindCSS with Blazor, covering setup, configuration, and automating CSS generation during the build process.
Explains the concept of Structured Concurrency for robust async code and demonstrates a potential C# implementation using a TaskScope.
Explores .NET 8's new Blazor Web template, unifying server and WebAssembly models with per-component server-side rendering.
A .NET developer shares technical interview questions focused on C#, SOLID principles, async/await, and database queries to assess problem-solving skills.
Explains how C# 12's new primary constructor feature reduces boilerplate code, especially in Dependency Injection scenarios.
Explores .NET 8's new UnsafeAccessorAttribute for faster, AOT-friendly reflection, comparing it to traditional methods with benchmarks.
A tutorial on building a minimal clone of ASP.NET Core from scratch to understand its core concepts like the web server, controllers, and middleware.
Explains how to create a ChunkedList<T> in C# to avoid Large Object Heap issues when storing massive amounts of data.
Explains the benefits and practical use of C# nullable reference types for safer code and cleaner API design.
Explains the memory leak issue with C# events and demonstrates how to implement the Weak Event pattern using weak references.
Explains the difference between auto-property initializers and expression-bodied getters in C#, showing how each affects property value evaluation.
Explains unexpected behavior of C#'s Enum.TryParse method and provides a solution using Enum.IsDefined for validation.
Explains the advantages of creating custom fakes for unit testing in C#/.NET instead of relying on third-party mocking libraries like Moq.
The Moq library faces controversy for using SponsorLink, a tool that checks for GitHub sponsorships during builds, raising privacy and open-source concerns.
Explains the new Keyed Services feature in .NET 8 Preview 7, showing how to register and inject named dependencies.
Explores combining F# and C# within .NET, highlighting F#'s functional strengths for domain logic and C#'s object-oriented approach.
A guide on using BenchmarkDotNet to compare performance across different .NET versions, with code examples and results.