Craig Johnson

Understanding ASP.NET Core Middleware Ordering and Pipeline Execution

The middleware pipeline is a potent idea that forms the foundation of ASP.NET Core applications. This pipeline handles all incoming HTTP requests and outbound responses. In order to manage, secure, log, and alter requests, middleware ordering is essential. A minor error in middleware ordering might result in major issues, such as application crashes, missing headers,…

Read More

Effective Extensions-Based Bulk Data Retrieval in EF Core

In the.NET environment, Entity Framework Core (EF Core) is a popular Object-Relational Mapper (ORM) that lets developers use strongly typed LINQ queries to communicate with databases. Large-scale data retrieval and manipulation present difficulties, even if EF Core is excellent at performing routine CRUD tasks. Conventional EF Core queries can lead to numerous database round trips…

Read More

ASPHostPortal Introduces ASP.NET Core 10.0 Hosting: Next-Level Speed, Security & Modern Development Features

ASPHostPortal has officially announced the launch of its ASP.NET Core 10.0 Hosting platform—bringing developers a faster, more secure, and more flexible environment for building modern web applications. As one of the most trusted ASP.NET hosting providers globally, ASPHostPortal continues to deliver early access to Microsoft’s latest technologies, ensuring developers stay ahead of the curve. Why…

Read More

Including Vector Databases in ASP.NET Core Search, such as Pinecone

Users now expect contextual retrieval, fuzzy relevance, and semantic search in addition to keyword matching. Vector databases offer effective similarity search and store vector embeddings (Pinecone, Milvus, Weaviate, etc.). They enable you to integrate semantic search to ASP.NET Core apps with low latency and great relevance when combined with OpenAI (or other embedding models). With…

Read More

JWS HMAC: What is it?

According to the RFC 7515 standard, JWS (JSON Web Signature) is a small, URL-safe technique for securely expressing claims between two parties. It allows you to digitally sign data and verify that it hasn’t been altered while being transmitted. A particular kind of message authentication code (MAC) that uses a cryptographic hash function and a…

Read More

Write Less, Achieve More in C#

This article explains the KISS (Keep It Simple, Stupid) principle in C# through practical, real-world examples. You’ll learn how to identify and eliminate unnecessary complexity in your code, refactor over-engineered solutions into simple, maintainable designs, and combine KISS with DRY and SOLID principles to create robust applications. Whether you’re a junior developer looking to write…

Read More

A Comprehensive Analysis of GC.Collect() vs. GC.SuppressFinalize() in.NET (with Real-World Examples)

Memory management in .NET is handled by the Garbage Collector (GC), which automatically reclaims memory used by objects that are no longer needed. However, there are scenarios where you might want to manually control garbage collection or prevent unnecessary cleanup. Two commonly misunderstood methods are: GC.Collect() → Forces garbage collection. GC.SuppressFinalize() → Prevents the finalizer…

Read More

Understanding Kestrel Web Server in .NET Core Deep Dive with Real World Examples

The core of ASP.NET Core is Kestrel, a lightweight, cross-platform web server designed for contemporary cloud-native applications. Kestrel powers your app in the background, regardless of whether you’re deploying it on Windows, Linux, or Docker. Let’s examine Kestrel’s definition, internal operation, deployment and configuration (using IIS or Nginx reverse proxy settings), and concluding with important…

Read More

How to Test ASP.NET Core Applications for Security?

1. Overview & Approach Security testing for ASP.NET Core should include multiple layers: Static Analysis (SAST): scan code for insecure patterns. Dependency/Package Scanning: find vulnerable NuGet packages. Configuration Review: Ensure framework and middleware settings are secure. Dynamic Testing (DAST): exercise the running app to find runtime flaws. Automated Integration Tests: programmatic tests that assert security…

Read More