Developer Support

Advocacy and Innovation

Setting up .NET Core Configuration Providers

ASP Core uses the convenient Provider Pattern to load configuration key/value pairs from various sources and expose those to you as a single Configuration object. This allows you to grab a configuration key like ConnectionString with one line of code regardless of where it was sourced from. However, the configuration API is not available by default in .NET Core Console applications.

Running Docker Windows and Linux Containers Simultaneously

Many of you with familiarity with Docker for Windows know how you currently have to switch between running either Windows or Linux Containers. In the following post, Premier Developer Consultant Randy Patterson teaches us how to combat this limitation and run Docker Windows and Linux Containers simultaneously on the same host. Starting ...

Order of Precedence when Configuring ASP.NET Core

In this post, Premier Developer Consultant Randy Patterson introduces the new configuration API for ASP.NET Core and its order of precedence. In previous version of ASP.NET, configuration was primarily handled by the ConfigurationManager class. This class typically obtained the user configurable settings from the AppSettings section located...

Debugging ASP Core on Linux with Visual Studio 2017

NET Core and specifically ASP Core is an Open Source, High Performance implementation of .NET that runs on Windows, Linux and Mac. After you deploy your web application to a Linux server it can be difficult to troubleshoot when issues arise. In this article, I’ll show you how to configure your Linux test server and Development environment to allow remote debugging giving you all the greatness of debugging in Visual Studio while your code is running on a Linux server.

Defining ASP.NET Core Controller action constraint to match the correct action

When developing Web Api controllers many times we have situations where we need to define similar arguments in different methods. For example, a controller that has 2 methods that query users either by last name or date of birth. The name of the method is different but they both will receive a single argument of type string. When the routing engine can’t determine which action method it should call, a status code of 500 is returned.