
An opinionated way to consistent Error Handling in ASP.NET Core
In this post, I have explained an opinionated way to achieve consistent error handling for your ASP.NET Core through Error response object.

In this post, I have explained an opinionated way to achieve consistent error handling for your ASP.NET Core through Error response object.

This post is the first of my new series on JSON:API for .NET developers. JSON:API has been around for a while but has not been widely known in the .NET world.

This post describes importance of passing a single correlation id across requests in microservices and how we an achieve this in .NET.
This post describes how we can render an Enumeration class as an Enum type in client code with NSwag by implementing Swagger ISchemaFilter.
In this post, I have explained how you can use an Enumeration class as a query string parameter by creating a custom Model Binder.
We typically use Enumeration classes with Domain-Driven Design (DDD). In this series, I will describe how you can use an Enumeration Class beyond DDD.
This post talks about my journey to publish ASP.NET Core Middleware as a Nuget Package from GitHub repository through GitHub Actions.
The post explains captive dependency. It highlights the potential issues when you do not configure lifetime services correctly.
Creating a client library for your Rest service can help your clients consume your Rest API. But is it a silver bullet to every problem?
C# 8 introduced a great feature of async stream using IAsyncEnumerable. This post talks about potential pitfalls when not using it right.
Adding Default Headers to Swagger / Open API definition in ASP.NET Core 3.1 application.
Different approaches we considered to set up integration tests when running against multiple DB providers in ASP.NET Core
In my previous post, I had talked about how we to ported an existing repository code from Azure SQL to Amazon Aurora. This is a two-series post where I will throw a little bit more light on the intention behind it and what we were trying to achieve. Background We had a small ASP.NET Core solution
I recently migrated the Dotnet Foundation website, https://dotnetfoundation.org/ to ASP.NET Core 3.0. The site was initially built on ASP.NET Core 2.1 and I found this as a good learning opportunity. Migrating from ASP.NET Core 2.1 to 2.2 I had initially raised PR to migrate from ASP.NET Core 2.1 to 2.2 instead of directly going to
Recently, after one of my PRs which was merged to master, my teammates started complaining about a weird scenario. On some occasions, the ASP.NET Core app hosted inside the IIS worker process (w3wp.exe), would simply die without any exception/ warning. There were no clear retro-steps and it was difficult to pinpoint what was causing the
Without a doubt Open Source is great. It has touched the lives of millions of developers and through them almost everyone living on this planet someway or the other. The magic of Open Source For all the power Open Source has given to developers, the sad reality is that only very few people are actually
One of the crucial pieces of the new solution that I’m working on is RabbitMQ. For those who have never heard of RabbitMQ, it is one of the most widely used open source message broker. Since our solution is hosted on-premise, RabbitMQ was one of the most natural fit for us. Our entire solution architecture
Sometime back, I had written about how to override appSettings during development in traditional ASP.NET application. Recently, we started development of a ASP.NET Core application and had a similar challenge. Our developers work on different operating systems (Windows and Mac). They have different local connection strings and application settings. We had a same problem as