Configuration des fichiers d'application dans .NET Core Console
Introduction
Les applications de console .NET Core sont souvent conçues pour être flexibles et configurables. Pour atteindre ce niveau de personnalisation, il est essentiel d'utiliser des fichiers de configuration pour stocker des paramètres importants et modifier le comportement de l'application sans modifier le code source. Cet article explorera les meilleures pratiques pour configurer des fichiers d'application dans des applications de console .NET Core.
Configuration par fichier JSON
Le format JSON (JavaScript Object Notation) est le format de configuration par défaut dans .NET Core. La création d'un fichier appsettings.json
à la racine du projet permet de stocker des paramètres sous forme de paires clé-valeur.
{
"Logging": {
"LogLevel": {
"Default": "Information",
"System": "Warning",
"Microsoft": "Warning"
}
},
"ConnectionStrings": {
"DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=MyDatabase;Trusted_Connection=True;"
}
}
Accéder aux configurations
Pour accéder aux paramètres définis dans le fichier appsettings.json
, on utilise la classe IConfiguration
injectée dans la classe principale de l'application.
using Microsoft.Extensions.Configuration;
public class Program
{
public static void Main(string[] args)
{
var builder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);
IConfiguration configuration = builder.Build();
// Accéder à une valeur de configuration
string connectionString = configuration.GetConnectionString("DefaultConnection");
// Loguer une valeur de configuration
Console.WriteLine($"Chaîne de connexion : {connectionString}");
}
}
Configuration de l'environnement
.NET Core permet de définir des configurations spécifiques à chaque environnement (Développement, Test, Production). Pour cela, il suffit de créer des fichiers appsettings.{EnvironmentName}.json
, par exemple appsettings.Development.json
, et de les utiliser en fonction de l'environnement.
// appsettings.Development.json
{
"Logging": {
"LogLevel": {
"Default": "Debug"
}
}
}
Configuration de la ligne de commande
Il est également possible de modifier les paramètres de configuration depuis la ligne de commande en utilisant des arguments d'application.
dotnet run --configuration Release --connectionstring "Server=MyServer;Database=MyDatabase;User=MyUser;Password=MyPassword"
Conclusion
La configuration des fichiers d'application dans .NET Core Console est essentielle pour la flexibilité et la personnalisation. En utilisant des fichiers JSON et des techniques de configuration d'environnement, il est possible de gérer facilement les paramètres de l'application et de les modifier sans modifier le code source. La configuration de la ligne de commande offre une option supplémentaire pour personnaliser les paramètres à la volée.