Linting a .NET 6 app Dockerfile using Hadolint, dockerfile_lint and Azure Pipelines

Like any other language, Dockerfiles can and should be linted for updated best practices and code quality checks. In this post I will show you how to incorporate a couple of Dockerfile linters into our Secure DevOps workflow to ensure our Dockerfiles are always readable, understandable and maintainable.
Read more →

Profiling a .NET6 app running on AWS ECS Fargate with dotnet-monitor

The dotnet-monitor tool is an alternative to the .NET CLI diagnostic tools. In this post I’ll show you how to deploy a .NET 6 application into AWS ECS Fargate with dotnet-monitor as a sidecar container, and afterwards how you can profile an app using the dotnet-monitor HTTP API.
Read more →

Profiling a .NET6 app running in a linux container with dotnet-trace, dotnet-dump, dotnet-counters, dotnet-gcdump and Visual Studio

This post contains a few practical examples showing you how to profile a .NET6 application running in a linux container using the .NET CLI diagnostic tools (dotnet-trace, dotnet-dump, dotnet-counters and dotnet-gcdump) and Visual Studio.
Read more →

Setting up the SonarQube scanner when building a .NET Core container image

If you’re using containers quite probably you’re doing the build, test and analysis steps inside the Dockerfile, and setting up the SonarQube scanner when building the image can be a little more cumbersome than usual, and that’s why I wanted to write a little bit about it.
Read more →

Securing a graphQL API with Azure Active Directory

In today’s post I want to talk about how you can secure a .NET graphQL API that uses HotChocolate (https://chillicream.com/) with Azure Active Directory.
Read more →

How to build a .NET template and use it within Visual Studio. Part 2: Creating a template package

This is a 2 part-series post. In part 2 I’ll show you how to convert a few .NET apps into .NET templates, package them together in a single NuGet pack and use them as templates within Visual Studio.
Read more →

How to build a .NET template and use it within Visual Studio. Part 1: Key concepts

This is a 2 part-series post. In part 1 I’ll be talking about a few key concepts that you should know when creating a .NET template.
Read more →

Getting started with OpenTelemetry and distributed tracing in .NET Core

OpenTelemetry is a set of APIs, SDKs, tooling and integrations that are designed for the creation and management of telemetry data such as traces, metrics, and logs. On today’s post I’m going to show you how you can start using OTEL and distributed tracing with .NET Core.
Read more →

How to configure your custom roslyn analyzer using an .editorconfig file

Roslyn Analyzers are extensions that analyze source code and report violations. Some analyzers are built-into VS and some are third party ones which can be installed (like StyleCopyAnalyzers, FxCopAnalyzers, etc.). On today’s post I will show you how you can configure your custom roslyn analyzers with an .editorconfig file.
Read more →

How to centrally manage NuGet package versions within your solution

In this post I want to show you some of the different options available when you want to centrally manage NuGet versions within a solution.
Read more →

How to restore nuget packages from an Azure DevOps Private Feed when building a Docker image

In this post I’ll show you how to restore NuGet packages from an Azure DevOps private feed when building a Docker image.
Read more →

Why and how you should add a healthcheck endpoint to your Wcf legacy applications

What I wanted to talk in these post is how easy is to add a healthcheck endpoint in a WCF application, and how you can use it in case you want to move the application into the Cloud in the near future.
Read more →

Enforce the use of a specific .NET Core version using Roslyn

In these past few years Microsoft has kept a steady flow of new .NET Core versions, and if you have hundreds of applications in your company it’s almost impossible to keep them updated to the most recent version of the framework. If you want to enforce that everyone on your company is using the correct framework version when they create a new application you can use a Roslyn Analyzer.
Read more →