Unable to read connection string from appsettings.json in a console application

.net-core, c#

Solution

Your code is correct. Set `optional: false` to check the file exists. The keypoint for a console app is to ensure `appsettings.json` has `Copy to output directory: Always` property.

Here is a minimal reproducible example:

//set "optional: false" to fail-fast without a file
var builder = new ConfigurationBuilder().AddJsonFile("appsettings.json", optional: false);
var configuration = builder.Build();

//contains "Server=xxxxxx"
string str = configuration.GetConnectionString("DataBaseConnectionString");

Actual documentation: Configuration in ASP.NET Core

Problem

I was tring .NET core with a console application and I'm stucked on reading from `appsettings.json`. Here's my code: ``` { "ConnectionStrings": { "DataBaseConnectionString": "Server=xxxxxx" } } ``` ... ``` var builder = new ConfigurationBuilder() // .SetBasePath("") .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true) .AddEnvironmentVariables(); configuration = builder.Build(); var xx = configuration.GetConnectionString("DataBaseConnectionString"); ``` I got null on `xx`, what am I doing wrong? Thanks

Original source