Improve Your .NET& Software Architecture
Join 66,000+ subscribers accelerating their skills every week
One practical tip every Saturday
.NET best practices and actionable advice
Software Architecture deep dives and fresh ideas
Join thousands of software engineers

Previous issues of The .NET Weekly

How To Build a CI/CD Pipeline With GitHub Actions And .NET
May 27, 2023
Imagine being able to automatically build, test, and deploy your .NET applications with every code change. GitHub Actions are completely free and simp...

Multi-Tenant Applications With EF Core
May 20, 2023
One application serves multiple customers, while keeping their data isolated. You can approach multi-tenancy with a single database and logical isolat...

Visualize Your Software Architecture With The C4 Model
May 13, 2023
Most software architecture diagrams I've seen are a total mess. The C4 model is a lightweight, standard way to describe your system, with four diagram...

Enforcing Software Architecture With Architecture Tests
May 6, 2023
When deadlines are tight and you start cutting corners, that beautiful software architecture you built crumbles like a house of cards. So how do you e...

Health Checks In ASP.NET Core For Monitoring Your Applications
April 29, 2023
With distributed systems growing in complexity, it's getting harder to monitor the health of our applications. That's where health checks come in. I'l...

Idempotent Consumer - Handling Duplicate Messages
April 22, 2023
What happens when a message is retried in an event-driven system? The worst case scenario is that the message is processed twice, and the side effects...

EF Core Raw SQL Queries
April 15, 2023
EF7 introduced support for returning scalar types using SQL queries. And now we're getting support for querying unmapped types with raw SQL queries in...

How To Use Rate Limiting In ASP.NET Core
April 8, 2023
Rate limiting is a technique to limit the number of requests to a server or an API. ASP.NET Core 7 has a built-in rate limiter middleware that's easy ...

Implementing The Saga Pattern With Rebus And RabbitMQ
April 1, 2023
Designing long-lived processes in a distributed environment is an interesting engineering challenge. A Saga is a sequence of local transactions, each ...

How To Publish MediatR Notifications In Parallel
March 25, 2023
MediatR supports the publish-subscribe pattern with notifications, and until recently the handlers subscribing to an INotification could only execute ...
Subscribe to the Newsletter
Join 66,000+ readers of The .NET Weekly for practical tips and resources to improve your .NET and software architecture skills.