Page 13 of 15
How to use EF Core's global query filters for soft deletes, multi-tenancy, and other cross-cutting data filtering concerns.
Build custom authentication handlers in ASP.NET Core for API key, HMAC, and token-based authentication schemes.
Use ArrayPool<T> and MemoryPool<T> to rent and return buffers, drastically cutting array allocations in high-throughput code.
How EF Core's split queries prevent cartesian explosion when loading multiple related collections, and when to use them.
Generate OpenAPI specifications from ASP.NET Core APIs using the built-in OpenAPI support and Swashbuckle, with customisation for schemas, security, and documentation.
Reduce GC pressure and allocation overhead by reusing objects with Microsoft.Extensions.ObjectPool.
A deep dive into EF Core's change tracker, exploring how it detects modifications, the role of entity states, and strategies for optimising performance.
Organise minimal API endpoints with route groups and add cross-cutting behaviour with endpoint filters for validation, logging, and transformation.
Use the Problem Details standard (RFC 9457) in ASP.NET Core to return consistent, machine-readable error responses from your APIs.
Build custom model binders in ASP.NET Core to handle non-standard parameter formats like comma-separated lists, composite keys, and smart parsing.
How ASP.NET Core selects response formats using content negotiation, and how to add custom formatters for XML, CSV, and other media types.
Implement URL, query string, header, and media type API versioning in ASP.NET Core using the Asp.Versioning packages.
C# 13 allows the implicit 'from the end' index operator (^) inside object initialisers, completing index expression support.
Configure Kestrel — ASP.NET Core's built-in web server — for endpoints, HTTPS, limits, and production readiness.
Build fault-tolerant HTTP calls using Polly v8 resilience pipelines with retry, circuit breaker, timeout, and rate limiter strategies.
Protect your ASP.NET Core APIs from abuse using the built-in rate limiting middleware with fixed, sliding, token bucket, and concurrency limiters.
C# 13 adds the \e escape sequence for the ESC character, making ANSI terminal formatting cleaner and less error-prone.
Use IHttpClientFactory and typed clients to manage HTTP connections properly, avoiding socket exhaustion and DNS staling.
C# 13 introduces System.Threading.Lock, a dedicated type for the lock statement that improves performance and clarity.
Configure your ASP.NET Core application differently for Development, Staging, and Production using environment-aware settings.
Build long-running background tasks in ASP.NET Core using IHostedService and BackgroundService, with patterns for queued work, timed execution, and graceful shutdown.
C# 13 extends partial members to include properties and indexers, enabling cleaner source generator patterns.
Reduce bandwidth and improve load times by enabling response compression with Brotli and Gzip in ASP.NET Core.
How to build convention-based and factory-based middleware in ASP.NET Core, including branching, short-circuiting, and testability patterns.
Use ASP.NET Core's output caching middleware to cache entire responses and dramatically reduce server load.