#CSharp Posts
Deploying a .NET App with Docker Compose
Docker makes it easy to package a .NET application and its dependencies into a consistent, portable environment. Docker Compose takes this a step further by allowing you to define and run your application and supporting services from a single configuration file. In this article, we’ll look at how to deploy a .NET application using Docker Compose.

Multi-Stage Docker Builds for .NET
Multi-stage Docker builds provide a cleaner and more efficient way to package .NET applications. By separating the build environment from the final runtime image, you can keep development tools out of production, reduce image size and create more focused containers. In this article, we’ll look at how multi-stage Docker builds work and how to use them with modern .NET applications.

When to Use Records in C#
C# records provide a concise way to represent data where the values themselves matter more than the identity of the object. Introduced in C# 9, records include built-in value-based equality, concise syntax and support for immutable data models. But records are not a replacement for classes everywhere. Knowing when to use a record, and when to stick with a class, can make your C# code cleaner and easier to maintain.

Understanding Middleware in ASP.NET Core
Middleware is one of the fundamental building blocks of ASP.NET Core. It sits between an incoming HTTP request and your application, allowing you to inspect, modify or respond to requests before they reach your application code. Understanding how middleware works, and especially the order in which it runs, is essential when building reliable ASP.NET Core applications.

Handling Soft Deletes in EF Core
When working with business applications, permanently deleting data is often undesirable. Records may need to be restored, audited or retained for compliance purposes. Soft deletes provide a simple solution by marking records as deleted rather than removing them from the database. In this article, we'll explore how to implement soft deletes in Entity Framework Core using query filters and save interception techniques.

Tracking vs No-Tracking Queries Explained
When working with Entity Framework, one of the most overlooked performance considerations is whether queries should be tracked or not. By default, Entity Framework tracks entities returned from queries, allowing changes to be detected and saved automatically. However, tracking comes with overhead and is not always necessary. Understanding when to use tracking and no-tracking queries can improve application performance and reduce memory usage.

Become a member
Get the latest news right in your inbox. It's free and you can unsubscribe at any time. We hate spam as much as we do, so we never spam!
