.net 6 Console Application Appsettings

4 min read Jun 03, 2024
.net 6 Console Application Appsettings

Utiliser les fichiers appsettings dans une application console .NET 6

Introduction

Les applications console .NET 6, tout comme les applications web, peuvent utiliser des fichiers appsettings pour gérer la configuration de l'application. Cela permet de séparer le code de la configuration, rendant le code plus flexible et plus facile à maintenir. Dans ce guide, nous allons explorer comment utiliser les fichiers appsettings dans une application console .NET 6.

Créer un projet d'application console

Commencez par créer un nouveau projet d'application console .NET 6. Vous pouvez utiliser Visual Studio ou l'interface de ligne de commande :

dotnet new console -o MyConsoleApp

Configurer les fichiers appsettings

Par défaut, .NET 6 utilise le fichier appsettings.json pour la configuration. Ce fichier est situé dans le répertoire racine du projet. Vous pouvez créer un fichier appsettings.json et y ajouter les paramètres souhaités, comme ceci:

{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft": "Warning",
      "Microsoft.Hosting.Lifetime": "Information"
    }
  },
  "MySettings": {
    "ConnectionString": "Server=localhost;Database=MyDatabase;User Id=sa;Password=P@ssw0rd",
    "ApiKey": "YOUR_API_KEY"
  }
}

Important: Vous pouvez créer des fichiers de configuration supplémentaires pour des environnements spécifiques, comme appsettings.Development.json, appsettings.Production.json, etc. Ces fichiers seront chargés en priorité si l'environnement correspondant est activé.

Accéder aux paramètres de configuration

Pour accéder aux paramètres de configuration dans votre application console, vous devez injecter le service IConfiguration dans votre classe de programme.

using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Hosting;

namespace MyConsoleApp
{
    public class Program
    {
        public static void Main(string[] args)
        {
            // Création d'un host pour gérer la configuration
            var host = Host.CreateDefaultBuilder(args)
                .ConfigureAppConfiguration((hostContext, config) =>
                {
                    // Chargement des fichiers appsettings
                    config.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true);
                    config.AddJsonFile($"appsettings.{hostContext.HostingEnvironment.EnvironmentName}.json", optional: true, reloadOnChange: true);
                })
                .Build();

            // Récupération du service IConfiguration
            var config = host.Services.GetRequiredService();

            // Accès aux paramètres de configuration
            var connectionString = config.GetValue("MySettings:ConnectionString");
            var apiKey = config.GetValue("MySettings:ApiKey");

            // Utilisation des paramètres
            Console.WriteLine($"Connection string: {connectionString}");
            Console.WriteLine($"API Key: {apiKey}");

            host.Run();
        }
    }
}

Conclusion

L'utilisation des fichiers appsettings dans une application console .NET 6 simplifie la gestion de la configuration et améliore la modularité du code. En séparant la configuration du code, vous pouvez facilement adapter votre application à différents environnements sans modifier le code source. N'hésitez pas à utiliser cette technique pour tous vos projets .NET 6.

Featured Posts