All Coder Things
Articles, references, and practical project series on software development.
Guides
Featured Articles
Layered Architecture and Clean Architecture in C#
Learn layered architecture and Clean Architecture in C# to build maintainable, testable, and well-structured applications.
C# String Operations
Learn how to work with strings in C#, including concatenation, searching, substring, IndexOf, and other essential string operations.
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.
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.
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.
Lambda Expressions in C#
Learn lambda expressions in C#, including concise syntax, Func and Action delegates, and practical LINQ usage examples.
Code Analysis with Roslyn Compiler API in C#
Learn code analysis in C# using Roslyn Compiler API, including syntax trees, analyzers, and code generation scenarios.
Using FluentValidation in C#
Learn FluentValidation in C# to define clean and maintainable validation rules for models and application inputs.
Clean Code Principles with C#
Learn clean code principles with C# to write readable, maintainable, and scalable applications with practical examples.
Generics in C# (List, Dictionary)
Learn generics in C#, including List
C# Console Commands
Learn how to work with the C# console by writing output, reading user input, and formatting text with practical examples.
C# Exception Handling (try, catch, finally)
Learn how to handle exceptions in C# using try, catch, and finally blocks to manage errors safely with clear examples.
Delegates and Events in C#
Learn delegates and events in C# to build event-driven applications using callbacks, subscriptions, and real-world examples.
Visual Studio / VS Code Tips for C#
Learn Visual Studio and VS Code tips for C# to improve productivity with shortcuts, extensions, and efficient workflows.
Writing Unit Tests in C# (xUnit, NUnit, MSTest)
Learn how to write unit tests in C# using xUnit, NUnit, and MSTest to build reliable and maintainable applications.
Debugging Techniques in C#
Learn debugging techniques in C# using breakpoints, watch windows, and step tools to quickly identify and fix issues.
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.
Variables, Data Types, and auto in C++
Learn variables, data types, and the auto keyword in C++ with practical examples of type deduction and memory usage.
Encapsulation, Inheritance, and Polymorphism in C#
Learn encapsulation, inheritance, and polymorphism in C# with clear examples to understand core OOP principles and real use cases.
C# Loops (for, foreach, while, do-while)
Learn how to use for, foreach, while, and do-while loops in C#. Discover practical examples for handling repeated operations in C# applications.
Using Benchmarking in C# (BenchmarkDotNet)
Learn benchmarking in C# using BenchmarkDotNet to measure performance and optimize your code with accurate metrics.
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.
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.
Conditional Statements in C++: if, else if, switch
Learn conditional statements in C++ using if, else if, and switch to control decision-making and program flow.
Methods and Parameter Usage in C#
Learn how to define methods and use parameters in C#, including value and reference parameters, optional parameters, and examples.
Latest Examples
Idempotency Key in ASP.NET Core (.NET 8): Prevent Duplicate POST Requests
Use an Idempotency-Key header to make POST requests safe to retry: cache the first response and replay it for duplicates, avoiding double inserts.
Safe Sort & Filter in ASP.NET Core: Query Builder with Whitelisting
Parse ?sort=name,-createdAt&filter=country:TR,status:active safely by whitelisting allowed fields and mapping them to expressions or SQL columns—no dynamic injection.
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.
Featured 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.
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.
Idempotency Key in ASP.NET Core (.NET 8): Prevent Duplicate POST Requests
Use an Idempotency-Key header to make POST requests safe to retry: cache the first response and replay it for duplicates, avoiding double inserts.
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.
Safe Sort & Filter in ASP.NET Core: Query Builder with Whitelisting
Parse ?sort=name,-createdAt&filter=country:TR,status:active safely by whitelisting allowed fields and mapping them to expressions or SQL columns—no dynamic injection.