All Coder Things
Articles, references, and practical project series on software development.
Guides
Featured Articles
Arrays in C#
Learn arrays in C#, including declaration, indexing, looping through elements, and common array operations with examples.
Advanced LINQ in C# (GroupBy, Join, Aggregate)
Learn advanced LINQ in C# using GroupBy, Join, and Aggregate to perform complex data queries effectively.
Design Patterns in C# (Factory, Singleton, Repository, Observer)
Learn design patterns in C#, including Factory, Singleton, Repository, and Observer, to build flexible and maintainable applications.
Interop in C# (Working with C/C++ Libraries)
Learn how to use Interop in C# to work with C/C++ libraries, including P/Invoke, unmanaged code, and data marshaling.
C# Math Library
Learn how to use the C# Math library, including Pow, Sqrt, Round, Abs, and other essential mathematical methods with examples.
Introduction to Entity Framework Core in C#
Learn the basics of Entity Framework Core in C#, including DbContext, DbSet, and fundamental database operations.
Generics in C# (List, Dictionary)
Learn generics in C#, including List
Asynchronous Streams in C# (IAsyncEnumerable)
Learn asynchronous streams in C# with IAsyncEnumerable to process data step by step using modern async iteration patterns.
Dependency Injection Basics in C#
Learn the basics of Dependency Injection in C#, including managing dependencies, loose coupling, and improving testability.
Task Parallel Library (TPL) and Parallel Programming in C#
Learn Task Parallel Library and parallel programming in C# using Task, Parallel, and concurrency patterns with practical examples.
LINQ Basics in C# (Where, Select, OrderBy)
Learn LINQ basics in C# using Where, Select, and OrderBy to query, filter, and sort collections with practical examples.
IDisposable and the Using Pattern in C#
Learn IDisposable and the using pattern in C# to manage resources safely, release unmanaged objects, and avoid leaks.
Process and Thread Management in C#
Learn process and thread management in C# to control execution flow, system resources, and multithreaded applications.
File IO and Stream API in C#
Learn file input/output and Stream API in C#, including reading, writing, and managing file data efficiently.
The Concept of Source Generators in C# (C# 9+)
Learn source generators in C# to generate code at compile time and improve performance with modern development techniques.
SOLID Principles with C#
Applying SOLID principles in C# with examples: building flexible, maintainable, and testable code.
Memory Management and the Garbage Collector in C#
Learn memory management and the garbage collector in C# to understand object lifetime, allocation, and cleanup processes.
Extension Methods in C#
Learn extension methods in C# to add new functionality to existing types without modifying their source code.
Performance Optimization with Span and Memory in C#
Learn performance optimization in C# using Span
Asynchronous Programming Basics in C# (async/await)
Learn async and await in C# to build responsive applications with asynchronous tasks, non-blocking code, and practical examples.
Class, Object, Property and Methods in C#
Learn how classes, objects, properties, and methods work in C# and form the core building blocks of object-oriented programming.
Collections in C#: List, Dictionary, Queue, Stack
Learn C# collections like List, Dictionary, Queue, and Stack to store and manage data efficiently with practical examples.
Delegates and Events in C#
Learn delegates and events in C# to build event-driven applications using callbacks, subscriptions, and real-world examples.
Latest Examples
ASP.NET Core Validation Errors: Normalize ModelState to { field, message }[]
Normalize ASP.NET Core ModelState errors into a simple { field, message }[] format using InvalidModelStateResponseFactory, so clients can render validation consistently.
Zip a Folder with Progress in .NET (WPF Example)
Create a ZIP from a folder in .NET while reporting progress to a WPF ProgressBar using ZipArchive and IProgress for smooth UI updates.
Standard API Response Wrapper in ASP.NET Core (Result)
Standardize success and error responses in ASP.NET Core using a Result
IP Rate Limiting in ASP.NET Core (.NET 8): Return 429 Too Many Requests
Limit requests per IP using .NET 8’s built-in rate limiting middleware and return 429 with Retry-After to protect your API from abuse.
ProblemDetails in ASP.NET Core: Clean Error Responses with TraceId
Map exceptions to RFC 7807 ProblemDetails and include a traceId so clients get consistent errors and you can match the exact request in logs.
Cleaner Pagination in ASP.NET Core Web API (Headers + Link)
Return only items in the body and move pagination metadata to headers. Add RFC 5988 Link header (next/prev) for clean, predictable API navigation.
Featured Examples
Standard API Response Wrapper in ASP.NET Core (Result)
Standardize success and error responses in ASP.NET Core using a Result
ASP.NET Core Validation Errors: Normalize ModelState to { field, message }[]
Normalize ASP.NET Core ModelState errors into a simple { field, message }[] format using InvalidModelStateResponseFactory, so clients can render validation consistently.
Zip a Folder with Progress in .NET (WPF Example)
Create a ZIP from a folder in .NET while reporting progress to a WPF ProgressBar using ZipArchive and IProgress for smooth UI updates.
IP Rate Limiting in ASP.NET Core (.NET 8): Return 429 Too Many Requests
Limit requests per IP using .NET 8’s built-in rate limiting middleware and return 429 with Retry-After to protect your API from abuse.