Detecting duplicate routes in ASP.NET Core: Visualizing ASP.NET Core 3.0...
This is the fifth post in the series: Visualizing ASP.NET Core 3.0 endpoints using GraphvizOnline. Part 1 - Visualizing endpoints using the DOT language Part 2 - Adding an endpoint graph to your...
View ArticleExploring the code behind IHttpClientFactory in depth
In this post I take a look at the code in the default implementation of IHttpClientFactory in ASP.NET Core—DefaultHttpClientFactory. We'll see how it ensures that HttpClient instances created with the...
View ArticleDI scopes in IHttpClientFactory message handlers don't work like you think...
In this post I discuss how dependency injection scopes work in the context of IHttpClientFactory. The title of this post reflects the fact that they don't work like I previously expected them to! This...
View ArticleControlling IHostedService execution order in ASP.NET Core 3.x
ASP.NET Core 3.0 re-platformed the WebHostBuilder on top of the generic IHost abstraction, so that Kestrel runs in an IHostedService. Any IHostedService implementations you add to...
View ArticleShould you unit-test API/MVC controllers in ASP.NET Core?
Based on Betteridge's law of headlines: no! But based on recent twitter activity, that's no doubt a somewhat controversial opinion, so in this post I look at what a unit-test for an API controller...
View ArticleAn Introduction to Kubernetes: Deploying ASP.NET Core applications to...
This is the first post in the series: Deploying ASP.NET Core applications to Kubernetes. Part 1 - An Introduction to Kubernetes (this post) Part 2 - Configuring resources with YAML manifests Part 3 -...
View ArticleConfiguring resources with YAML manifests: Deploying ASP.NET Core...
This is the second post in the series: Deploying ASP.NET Core applications to Kubernetes. Part 1 - An Introduction to Kubernetes Part 2 - Configuring resources with YAML manifests (this post) Part 3 -...
View ArticleAn introduction to deploying applications with Helm: Deploying ASP.NET Core...
This is the third post in the series: Deploying ASP.NET Core applications to Kubernetes. Part 1 - An Introduction to Kubernetes Part 2 - Configuring resources with YAML manifests Part 3 - An...
View ArticleCreating a Helm chart for an ASP.NET Core app: Deploying ASP.NET Core...
This is the fourth post in the series: Deploying ASP.NET Core applications to Kubernetes. Part 1 - An Introduction to Kubernetes Part 2 - Configuring resources with YAML manifests Part 3 - An...
View ArticleSetting environment variables for ASP.NET Core apps in a Helm chart:...
This is the fifth post in the series: Deploying ASP.NET Core applications to Kubernetes. Part 1 - An Introduction to Kubernetes Part 2 - Configuring resources with YAML manifests Part 3 - An...
View ArticleAdding health checks with Liveness, Readiness, and Startup probes: Deploying...
This is the sixth post in the series: Deploying ASP.NET Core applications to Kubernetes. Part 1 - An Introduction to Kubernetes Part 2 - Configuring resources with YAML manifests Part 3 - An...
View ArticleRunning database migrations when deploying to Kubernetes: Deploying ASP.NET...
This is the seventh post in the series: Deploying ASP.NET Core applications to Kubernetes. Part 1 - An Introduction to Kubernetes Part 2 - Configuring resources with YAML manifests Part 3 - An...
View ArticleRunning database migrations using jobs and init containers: Deploying ASP.NET...
This is the eighth post in the series: Deploying ASP.NET Core applications to Kubernetes. Part 1 - An Introduction to Kubernetes Part 2 - Configuring resources with YAML manifests Part 3 - An...
View ArticleMonitoring Helm releases that use jobs and init containers: Deploying ASP.NET...
This is the ninth post in the series: Deploying ASP.NET Core applications to Kubernetes. Part 1 - An Introduction to Kubernetes Part 2 - Configuring resources with YAML manifests Part 3 - An...
View ArticleCreating an 'exec-host' deployment for running one-off commands: Deploying...
This is the tenth post in the series: Deploying ASP.NET Core applications to Kubernetes. Part 1 - An Introduction to Kubernetes Part 2 - Configuring resources with YAML manifests Part 3 - An...
View ArticleAvoiding downtime in rolling deployments by blocking SIGTERM: Deploying...
This is the eleventh post in the series: Deploying ASP.NET Core applications to Kubernetes. Part 1 - An Introduction to Kubernetes Part 2 - Configuring resources with YAML manifests Part 3 - An...
View ArticleTips, tricks, and edge cases: Deploying ASP.NET Core applications to...
This is the twelfth post in the series: Deploying ASP.NET Core applications to Kubernetes. Part 1 - An Introduction to Kubernetes Part 2 - Configuring resources with YAML manifests Part 3 - An...
View ArticleApplying the MVC design pattern to Razor Pages
With the recent release of .NET 5.0, I'm hard at work updating the code and content of the second edition of my book ASP.NET Core in Action, Second Edition. This post gives you a sample of what you...
View ArticleUsing Quartz.NET with ASP.NET Core and worker services
This is an update to a post from 18 months ago in which I described how to use Quartz.NET to run background tasks by creating an an ASP.NET Core hosted service. There's now an official package,...
View ArticleUsing action results and content negotiation with "route-to-code" APIs
In this post post I show that you can combine some techniques from MVC controllers with the new "route-to-code" approach. I show how you can use MVC's automatic content negotiation feature to return...
View Article