Para .NET Core 3.1, aplicación de consola, ¿cómo puedo leer un objeto complejo del archivo appsetting.json y convertirlo en el objeto correspondiente?
Todos los ejemplos que veo en línea parecen ser para versiones anteriores de .NET core y las cosas parecen haber cambiado desde entonces. A continuación se muestra mi código de muestra. Realmente no sé cómo proceder desde aquí. Gracias por tu ayuda.
appsettings.json
{ "Player": { "Name": "Messi", "Age": "31", "Hobby": "Football" } }jugador.cs
class Player { public string Name { get; set; } public string Age { get; set; } public string Hobby { get; set; } }Programa.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"); }En .Net Core 3.1 necesitas instalar estos paquetes:
Microsoft.Extensions.Configuration.Json
Microsoft.Extensions.Configuration.FileExtensions
luego construye IConfiguration :
static void Main(string[] args) { IConfiguration configuration = new ConfigurationBuilder() .AddJsonFile("appsettings.json", true,true) .Build(); var playerSection = configuration.GetSection(nameof(Player)); }