Maison > développement back-end > C++ > Comment accéder aux valeurs de configuration à partir de appsettings.json dans ASP.NET Core ?

Comment accéder aux valeurs de configuration à partir de appsettings.json dans ASP.NET Core ?

Linda Hamilton
Libérer: 2025-01-13 15:51:48
original
290 Les gens l'ont consulté

How to Access Configuration Values from appsettings.json in ASP.NET Core?

Comment lire la valeur de configuration appsettings.json dans ASP.NET Core

Aperçu

Pour accéder aux données de configuration stockées dans le fichier appsettings.json dans ASP.NET Core, vous pouvez utiliser le générateur de configuration ou le mode options.

Utiliser le Générateur de configuration

Méthode 1 : utiliser ConfigurationBuilder.GetValue()

  • Injectez l’interface IConfiguration dans votre classe ou contrôleur.
  • Récupérez la valeur d'une clé spécifique à l'aide de la méthode GetValue, en spécifiant le type de la valeur.

Méthode 2 : utiliser ConfigurationBinder

  • Ajoutez une instance ConfigurationBinder en tant que paramètre à votre méthode.
  • Utilisez la méthode Bind pour lier des objets aux valeurs de configuration.

Utiliser le mode options

1. Définir la classe de configuration

  • Créez une classe C# qui reflète la structure de vos données de configuration.
  • Chaque propriété de ces classes doit correspondre à la clé de configuration correspondante.

2. Enregistrez l'instance de configuration

  • Dans la méthode ConfigureServices de la classe de démarrage, utilisez services.Configure pour enregistrer l'instance de configuration.

3. Injecter IOptions

  • Injectez IOptions dans votre classe ou votre contrôleur.
  • Utilisez la propriété Value pour accéder aux objets de configuration fortement typés.

Exemple

appsettings.json :

<code class="language-json">{
  "ConnectionStrings": {
    "DefaultConnection": "Server=localhost;Database=MyDatabase"
  },
  "AppIdentitySettings": {
    "User": {
      "RequireUniqueEmail": true
    },
    "Password": {
      "RequiredLength": 8
    }
  }
}</code>
Copier après la connexion

Startup.cs :

<code class="language-csharp">public void ConfigureServices(IServiceCollection services)
{
    var connectionStringSection = Configuration.GetSection("ConnectionStrings");
    services.Configure<ConnectionStringSettings>(connectionStringSection);

    var appIdentitySettingsSection = Configuration.GetSection("AppIdentitySettings");
    services.Configure<AppIdentitySettings>(appIdentitySettingsSection);
}</code>
Copier après la connexion

Contrôleur.cs :

<code class="language-csharp">public class HomeController : Controller
{
    private readonly AppIdentitySettings _appIdentitySettings;

    public HomeController(IOptions<AppIdentitySettings> appIdentitySettings)
    {
        _appIdentitySettings = appIdentitySettings.Value;
    }

    public IActionResult Index()
    {
        var requiredLength = _appIdentitySettings.Password.RequiredLength;
        // ...
    }
}</code>
Copier après la connexion

Veuillez noter que ConnectionStringSettings et AppIdentitySettings dans l'extrait de code ci-dessus nécessitent que vous définissiez les classes C# correspondantes pour correspondre à la structure dans appsettings.json. Ces deux méthodes offrent des moyens flexibles d'accéder à la configuration de votre application. La méthode que vous choisissez dépend de vos préférences et de la complexité de votre application.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal