.net Core Get Appsettings Value In Controller

3 min read Jun 03, 2024
.net Core Get Appsettings Value In Controller

Accéder aux valeurs de AppSettings dans un contrôleur .NET Core

L'accès aux valeurs de configuration dans votre application .NET Core est essentiel pour gérer des paramètres tels que les connexions de base de données, les API clés, les chemins de fichiers et d'autres informations sensibles. Le fichier appsettings.json est un excellent endroit pour stocker ces paramètres. Dans ce guide, nous allons explorer comment accéder à ces valeurs de configuration directement depuis vos contrôleurs.

Méthode 1: Injection de dépendances

La méthode la plus recommandée pour accéder aux valeurs de configuration est l'injection de dépendances.

  1. Configuration: Déclarez une interface IConfiguration dans votre contrôleur :
public class MyController : Controller
{
    private readonly IConfiguration _configuration;

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

    // ...
}
  1. Accès aux valeurs: Utilisez la méthode GetValue<T> pour accéder aux valeurs spécifiques dans votre fichier appsettings.json.
public IActionResult Index()
{
    // Récupérer la valeur de "ConnectionStrings:DefaultConnection"
    string connectionString = _configuration.GetValue("ConnectionStrings:DefaultConnection");

    // ...
}

Avantages:

  • Code propre et lisible: Le code reste clair et facile à maintenir.
  • Testabilité: Facilite le test unitaire de votre contrôleur en injectant des configurations factices.

Méthode 2: Injection de services

Une autre option consiste à injecter le service de configuration directement dans votre contrôleur.

  1. Injection: Déclarez le service IConfiguration dans le constructeur de votre contrôleur :
public class MyController : Controller
{
    private readonly IConfiguration _configuration;

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

    // ...
}
  1. Accès: Utilisez la méthode GetSection pour accéder à une section spécifique de votre configuration.
public IActionResult Index()
{
    // Accéder à la section "ConnectionStrings"
    var connectionStrings = _configuration.GetSection("ConnectionStrings");

    // Récupérer la valeur "DefaultConnection"
    string connectionString = connectionStrings.GetValue("DefaultConnection");

    // ...
}

Avantages:

  • Flexibilité: Permet un accès plus structuré à la configuration.
  • Réutilisation: Facilite le réutilisation de la configuration dans d'autres parties de votre application.

Conclusion

Que vous choisissiez l'injection de dépendances ou l'injection de services, assurez-vous de gérer vos paramètres de configuration de manière sécurisée et structurée. Le fichier appsettings.json vous offre une base solide pour gérer votre configuration .NET Core, et l'accès à ces valeurs depuis vos contrôleurs est simple et efficace.

Related Post