При этом: свойство в C # и свойства в json (или xml или параметры командной строки) должны точно (без учета регистра).

ал со строго типизированной конфигурацией в .NET Core и нашел несколькостранный поведение.

ПОКО

public class ModuleConfiguration
{
    [JsonProperty("menu")]
    public List<MenuItem> MenuItems { get; set; }
}

Settings.json

{
  "moduleConfiguration": {
    "menu": [
      {
        "id": 1,
        "name": "test"
      }
    ]
  }
}

Когда я загружаю конфигурацию:

var builder = new ConfigurationBuilder().AddJsonFile(path);
var config = builder.Build().GetSection("moduleConfiguration").Get<T>();

Пункты меню коллекция пуста, но если я изменю «menu» на «menuItems» (в settings.json), коллекция будет заполнена правильно.

Означает ли это, чтоJsonProperty атрибут игнорируется?

Спасибо

Ответы на вопрос(1)

Ваш ответ на вопрос