Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
511 views
in Technique[技术] by (71.8m points)

c# - .NET Core 3.1 loading config from appsettings.json for console application

For .NET Core 3.1, console application how can I read a complex object from appsetting.json file and cast it into the corresponding object?

All the examples I see online seem to be for previous versions of .NET core and things seems to have changed since then. Below is my sample code. I don't really know how to proceed from here. Thank you for your help.

appsettings.json

{
  "Player": {
    "Name": "Messi",
    "Age": "31",
    "Hobby": "Football"
  }
}

Player.cs

class Player
{
    public string Name { get; set; }
    public string Age { get; set; }
    public string Hobby { get; set; }
}

Program.cs

static void Main(string[] args)
{
    var config = new ConfigurationBuilder()
        .SetBasePath(Path.GetDirectoryName(Assembly.GetEntryAssembly()?.Location))
        .AddJsonFile("appsetting.json").Build();
    var playerSection = config.GetSection("Player");
}
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

In .Net Core 3.1 you need to install these packages:

  • Microsoft.Extensions.Configuration.Json

  • Microsoft.Extensions.Configuration.FileExtensions

then build IConfiguration:

 static void Main(string[] args)
 {
    IConfiguration configuration = new ConfigurationBuilder()
       .AddJsonFile("appsettings.json", true,true)
       .Build();
    var playerSection = configuration.GetSection(nameof(Player));
}

Reference Configuration in ASP.NET Core


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...