.net 7 Get Value From Appsettings.json

5 min read Jun 03, 2024
.net 7 Get Value From Appsettings.json

Accéder aux valeurs de appsettings.json dans .NET 7

Cet article vous guidera sur la manière d'accéder aux valeurs stockées dans le fichier appsettings.json dans vos applications .NET 7. Le fichier appsettings.json est un fichier de configuration essentiel pour stocker des paramètres d'application, des connexions de base de données et d'autres informations sensibles.

Configuration par injection de dépendances

.NET 7 offre une approche puissante et recommandée pour la gestion de la configuration via l'injection de dépendances. Cette méthode utilise l'interface IConfiguration pour accéder aux valeurs de configuration.

1. Installer le package NuGet Microsoft.Extensions.Configuration.Json

dotnet add package Microsoft.Extensions.Configuration.Json

2. Créer une instance de IConfiguration

Dans votre programme principal ou dans un fichier de configuration dédié, vous pouvez créer une instance de IConfiguration en utilisant le code suivant:

// Charger le fichier appsettings.json
var builder = new ConfigurationBuilder()
    .SetBasePath(Directory.GetCurrentDirectory())
    .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);

// Créer une instance de IConfiguration
IConfiguration configuration = builder.Build();

3. Accéder aux valeurs

Vous pouvez accéder aux valeurs stockées dans le fichier appsettings.json en utilisant la méthode GetValue<T> de l'interface IConfiguration.

// Récupérer la valeur d'une clé dans appsettings.json
string connectionString = configuration.GetValue("ConnectionStrings:Default");

// Récupérer une valeur de type int
int port = configuration.GetValue("Server:Port");

Utilisation dans les classes

Pour utiliser la configuration dans vos classes, vous pouvez injecter IConfiguration dans le constructeur de votre classe.

public class MyService
{
    private readonly IConfiguration _configuration;

    public MyService(IConfiguration configuration)
    {
        _configuration = configuration;
    }

    public string GetConnectionString()
    {
        return _configuration.GetValue("ConnectionStrings:Default");
    }
}

Gestion des configurations d'environnement

.NET 7 vous permet de gérer des configurations spécifiques à l'environnement en utilisant des fichiers distincts comme appsettings.Development.json, appsettings.Production.json, etc.

1. Créer des fichiers de configuration d'environnement

Créez des fichiers de configuration supplémentaires pour chaque environnement, par exemple:

  • appsettings.Development.json
  • appsettings.Production.json

2. Charger les fichiers d'environnement

Dans votre configuration, utilisez AddJsonFile pour charger les fichiers d'environnement, en spécifiant l'environnement actuel.

var builder = new ConfigurationBuilder()
    .SetBasePath(Directory.GetCurrentDirectory())
    .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
    .AddJsonFile($"appsettings.{Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT")}.json", optional: true, reloadOnChange: true);

3. Priorité des fichiers de configuration

Les fichiers de configuration sont chargés dans l'ordre suivant:

  1. appsettings.json (fichier principal)
  2. appsettings.{Environment}.json (fichier spécifique à l'environnement)

Les valeurs du fichier de configuration de l'environnement remplacent les valeurs du fichier principal si les clés sont identiques.

Conclusion

L'accès aux valeurs de appsettings.json dans .NET 7 est simplifié grâce à l'injection de dépendances et à la gestion intégrée de la configuration d'environnement. Cette approche vous permet de gérer facilement les paramètres de votre application, les connexions de base de données et d'autres informations sensibles tout en assurant la flexibilité et la sécurité.

N'oubliez pas de réutiliser la clé appsettings.json au moins trois fois dans le contenu de l'article pour optimiser le référencement SEO.