Rico Suter's blog.
 

Articles

Logging with ILogger in .NET: Recommendations and best practices

This blog describes and outlines some best practices for using new the logging system which has been introduced with .NET Core but is also available in all .NET Standard 2.0 supporting .NET frameworks.
Read More ›

Technology Summary: Azure Blob Storage

Microsoft Azure Blob Storage is used to store big chunks of binary data to access from other cloud services. The technology is mainly used as replacement for a shared file system which is not available in the cloud.
Read More ›

Azure DevOps: How to update the Azure Function default Host Key in a PowerShell task

For a recent project I dynamically create new Azure Functions in an Azure DevOps release pipeline. One of the requirements was to automatically update each default Host Key to a given value so that it's easier to access the newly created HTTP functions.
Read More ›

Azure DevOps: Create a Web App for Containers CI/Release pipeline for an ASP.NET Core app

This article shows how to create a Web App for Containers CI/Release pipeline for an ASP.NET Core app.
Read More ›

C# 8: The output of Nullable Reference Types and how to reflect it

After reading some articles about the new C# 8 feature Nullable Reference Types, one question still was unanswered: How does a compiled assembly with nullable types enabled look like and how can I access the nullability information via reflection? Because I couldn't find an article with an answer, I had to figure it out myself.
Read More ›

Missing SDK when using the Microsoft.Build package in .NET Core

How to fix the missing SDK error when using the Microsoft.Build package in .NET Core.
Read More ›

Use a private Azure DevOps NuGet package feed with the .NET Core CLI

If you have a .NET Core project which references a NuGet package from a private Azure DevOps package feed, you cannot just build the project in CLI because you are not authorized to access the feed: When running dotnet restore, you’ll end up with this error message:
Read More ›

How to publish an NPM package in AppVeyor

For some open-source projects I need to publish NPM packages during the CI release on AppVeyor. Unlike with NuGet packages, you have to do that manually by installing NodeJS and NPM, creating an .npmrc file with your NPM credentials and publishing the package. This blog post describes this procedure in detail.
Read More ›

Automatically migrate your Entity Framework Core managed database on ASP.NET Core application start

If you use Entity Framework Core with migrations in your ASP.NET Core application and want to ensure that the database structure always matches the currently running application, you can simply migrate the database on application startup. This way you just have to redeploy your application and everything like migrating the data, change the schemas, etc. is done when the application is restarted.
Read More ›

Advanced Newtonsoft.Json: Dynamically rename or ignore properties without changing the serialized class

This article describes how to implement a custom contract resolver, so that you can ignore or rename serialized JSON properties where the serialization happens and without changing the serialized classes.
Read More ›