Почему компилятор не может прочитать значения из appsettings?

Компилятор в языке программирования C# не является ответственным за чтение значений из файла конфигурации appsettings.json. Эта задача выполняется приложением во время его выполнения.

Приложение C#, написанное с использованием ASP.NET Core или .NET Core, использует пакет конфигурации для загрузки значений из appsettings.json. Чтобы это работало, к приложению должен быть добавлен пакет конфигурации, а файл appsettings.json должен находиться в корневом каталоге приложения.

Для загрузки значения из appsettings.json можно использовать класс ConfigurationManager или класс ConfigurationBuilder. Оба класса позволяют обращаться к ключам и значениям из файла конфигурации.

Пример использования класса ConfigurationManager:

using System.Configuration;

string value = ConfigurationManager.AppSettings["myKey"];

Пример использования класса ConfigurationBuilder:

using Microsoft.Extensions.Configuration;

var builder = new ConfigurationBuilder()
    .SetBasePath(Directory.GetCurrentDirectory())
    .AddJsonFile("appsettings.json");

var configuration = builder.Build();

string value = configuration["myKey"];

Если компилятор выдает ошибку при попытке чтения значений из appsettings.json, то вероятно происходит что-то неправильное во время выполнения приложения. Например, файл appsettings.json может быть отсутствует или имеет неправильный формат.