Если вы просто хотите прочитать переменные из файла appvariables.json
и связать значение со следующим классом:
public class Desc
{
public string Code {get;set;}
public string Description {get;set;}
}
просто используйте ConfigurationBuilder()
:
var config= new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appvariables.json", optional: false, reloadOnChange: true)
.Build();
var v1=config.GetSection("Desc1").Get<Desc>();
var v2=config.GetSection("Desc2").Get<Desc>();
Редактировать
для извлечения нескольких Desc
, вы можете использовать GetChildren()
:
var v= config.GetChildren()
.Select(i=>i.Get<Desc>());
foreach(var i in v){
Console.WriteLine($"Got a variable : {i.Code}---{i.Description}");
}
Редактировать2
Вы можететакже добавьте условие Where
для фильтрации конфигураций, как вам нравится:
var v= config.GetChildren()
.Where(i=>i.Key.StartsWith("Type"))
.Select(i=>i.Get<Desc>());