ホームページ > バックエンド開発 > C++ > ASP.NET Core で appsettings.json から値を取得するにはどうすればよいですか?

ASP.NET Core で appsettings.json から値を取得するにはどうすればよいですか?

Patricia Arquette
リリース: 2025-01-13 16:06:47
オリジナル
678 人が閲覧しました

How Do I Retrieve Values from appsettings.json in ASP.NET Core?

ASP.NET Core の appsettings.json から構成値にアクセスする

このガイドでは、ASP.NET Core アプリケーション内の appsettings.json からの値の取得について説明します。 一般的な方法とトラブルシューティングの手順について説明します。

スタートアップ クラスのセットアップ

Startup クラスには次の構成が必要です:

  1. Inject IConfiguration: コンストラクターは IConfiguration を注入する必要があります (非推奨の IConfigurationRoot ではありません): public Startup(IConfiguration configuration)

  2. サービスの構成: ConfigureServices 内で、Configuration.GetSection("AppSettings") を使用して AppSettings オブジェクトを構成します:

    <code class="language-csharp"> services.Configure<AppSettings>(configuration.GetSection("AppSettings"));</code>
    ログイン後にコピー

AppSettings モデルの定義

appsettings.json の "AppSettings" セクションの構造をミラーリングするモデル クラスを作成します:

<code class="language-csharp">public class AppSettings
{
    public string Version { get; set; }
}</code>
ログイン後にコピー

コントローラー構成

IOptions<AppSettings> をコントローラーのコンストラクターに挿入します:

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

    public HomeController(IOptions<AppSettings> appSettings)
    {
        _appSettings = appSettings.Value;
    }
}</code>
ログイン後にコピー

Null _appSettings 値のトラブルシューティング

_appSettings が常に null である場合は、次の点を確認してください:

  1. IConfiguration 注入の検証: IConfigurationStartup コンストラクターに正しく注入されていることを確認します。
  2. サービス構成の確認: ConfigureServices メソッドを再確認して、「AppSettings」セクションのバインドが正確であることを確認します。
  3. コントローラーでの挿入の確認: IOptions<AppSettings> がコントローラー コンストラクターに適切に挿入されていることを確認します。

代替アプローチ

IOptions パターンを超えて、次の代替案を検討してください。

  • 直接 IConfiguration アクセス: IConfiguration を直接挿入し、Configuration.GetValue<T>("key") を使用して値にアクセスします。
  • ConfigurationBinder の使用: 厳密に型指定されたモデルを定義し、それに IConfiguration インスタンスをバインドします。これにより、型の安全性と保守性の向上が実現します。

結論

これらの手順に従うと、appsettings.json から値を正常に取得できるはずです。 問題が解決しない場合は、慎重なデバッグと構成の徹底的なレビューが必要です。

以上がASP.NET Core で appsettings.json から値を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート