.net 6 Console App Configuration Appsettings.json

4 min read Jun 03, 2024
.net 6 Console App Configuration Appsettings.json

Configuration d'une application console .NET 6 avec appsettings.json

Introduction

Lors de la création d'applications console .NET 6, il est courant de devoir gérer des configurations telles que les connexions aux bases de données, les chemins de fichiers et les valeurs d'API. appsettings.json offre un moyen simple et flexible de stocker ces informations dans un fichier JSON. Dans cet article, nous allons explorer comment configurer et utiliser appsettings.json dans votre application console .NET 6.

Configuration de base avec appsettings.json

  1. Création du fichier appsettings.json:

    Dans le répertoire racine de votre projet, créez un fichier nommé appsettings.json. Ce fichier contiendra vos paramètres de configuration.

  2. Définir les paramètres:

    À l'intérieur de appsettings.json, définissez vos paramètres sous forme de paires clé-valeur. Par exemple:

    {
      "ConnectionStrings": {
        "DefaultConnection": "Server=myServer;Database=myDatabase;User Id=myUser;Password=myPassword"
      },
      "Logging": {
        "LogLevel": {
          "Default": "Information",
          "Microsoft": "Warning"
        }
      }
    }
    
  3. Accéder aux paramètres dans votre code:

    Utilisez la classe IConfiguration pour lire les valeurs de appsettings.json. Injectez la classe dans votre classe de programme:

    using Microsoft.Extensions.Configuration;
    using Microsoft.Extensions.Hosting;
    
    public class Program
    {
        public static void Main(string[] args)
        {
            var builder = Host.CreateDefaultBuilder(args);
    
            builder.ConfigureAppConfiguration((hostingContext, config) =>
            {
                config.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true);
            });
    
            var app = builder.Build();
            var configuration = app.Services.GetRequiredService();
    
            // Lire les valeurs de configuration
            var connectionString = configuration.GetConnectionString("DefaultConnection");
            var logLevel = configuration.GetValue("Logging:LogLevel:Default");
    
            Console.WriteLine($"Connection String: {connectionString}");
            Console.WriteLine($"Log Level: {logLevel}");
        }
    }
    

Utilisation d'environnements

Vous pouvez utiliser des fichiers de configuration distincts pour différents environnements (par exemple, développement, test, production).

  1. Création de fichiers appsettings.[EnvironmentName].json:

    Créez des fichiers comme appsettings.Development.json, appsettings.Testing.json, etc. pour chaque environnement.

  2. Chargement du fichier approprié:

    Dans votre code, utilisez AddJsonFile() avec l'option reloadOnChange: true pour charger le fichier de configuration correspondant à l'environnement actuel.

    builder.ConfigureAppConfiguration((hostingContext, config) =>
    {
        config.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true);
        config.AddJsonFile($"appsettings.{hostingContext.HostingEnvironment.EnvironmentName}.json", optional: true, reloadOnChange: true);
    });
    

Conclusion

appsettings.json fournit un moyen simple et efficace de gérer la configuration dans les applications console .NET 6. En utilisant des fichiers séparés pour différents environnements, vous pouvez facilement adapter votre application à diverses configurations. N'hésitez pas à explorer les options de configuration plus avancées de .NET 6 pour des besoins plus spécifiques.

Featured Posts