Multi-tenancy is a design pattern where a single instance of an application serves multiple tenants. This blog post will demonstrate how to implement single database multi-tenancy using Entity Framework Core with global query filters
When dealing with large files in MongoDB, you might encounter challenges with storage and retrieval. This is where GridFS and the bucket design pattern come into play. Let's break down these concepts in simple terms and see how to implement them using C# and .NET.
Azure Emulators provide developers with a way to test their .NET Aspire applications locally, without incurring cloud costs or requiring an internet connection. These emulators replicate the behavior of Azure services, allowing developers to write and debug code as if it were running in the cloud.
Aspire and Aspir8 are powerful tools that leverage Kubernetes to make deploying microservices easier for developers across various cloud environments. Let's walk through setting up and using these tools.
Background jobs are tasks that run "behind the scenes" in your application. They handle work that doesn't need to happen immediately or that might take a long time to complete.
Let's say you are working at a company, and there is an application written in the .NET Framework that has been in use for 15 years and is now considered legacy. How can we modernize this application using current technologies?
In microservices development, we often deal with complex code for handling transactions between services, typically involving verbose try-catch blocks. To ensure consistency in distributed systems, the Saga pattern offers a straightforward approach. Today, I'll walk you through implementing this pattern using MassTransit, a reliable framework for orchestrating distributed systems.
.NET Chiseled Image is a new image type that Microsoft announced during the .NET Conf 2023 keynote. This image type offers improvements in both performance and security. In this article, I will share my experiences with it.
URL shortening is a technique on the World Wide Web in which a Uniform Resource Locator(URL) may be made substantially shorter while still directing users to the required page. This is achieved by using a redirect that links to the web page associated with a long URL.