ホームページ >バックエンド開発 >C++ >ASP.NET Core で JSON ファイルから AppSettings 値を読み取る方法は?

ASP.NET Core で JSON ファイルから AppSettings 値を読み取る方法は?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-23 04:35:16121ブラウズ

How to Read AppSettings Values from a JSON File in ASP.NET Core?

ASP.NET Core で JSON から構成データにアクセスする: 実践ガイド

JSON ファイルなどの外部構成ソースは、Web 開発で頻繁に使用されます。 ASP.NET Core は、古いバージョンとは異なり、このデータにアクセスするための堅牢な方法を提供します。このガイドでは、JSON ファイルから AppSettings 値を取得する方法を説明します。

設定ファイルのセットアップ

まず、キーと値のペアを使用して Config.json ファイル (たとえば、appsettings フォルダー内) を作成します。

<code class="language-json">{
  "AppSettings": {
    "token": "1234"
  }
}</code>

このファイルには、コード内でアクセスする構成データが保存されます。

JSON 構成をアプリケーションに統合する

アプリケーションの Startup.cs ファイル内で、ConfigurationBuilder:

を構成します。
<code class="language-csharp">public class Startup
{
    public IConfiguration Configuration { get; }

    public Startup(IHostingEnvironment env)
    {
        var builder = new ConfigurationBuilder()
            .SetBasePath(env.ContentRootPath)
            .AddJsonFile("appsettings/Config.json", optional: true, reloadOnChange: true);

        Configuration = builder.Build();
    }
    // ... rest of your Startup class
}</code>

依存関係の注入によるコントローラーの構成へのアクセス

コントローラーでこれらの設定を使用するには、IConfiguration オブジェクトを挿入します。

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

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

    public IActionResult Index()
    {
        var token = _configuration["AppSettings:token"];
        return View(token);
    }
}</code>

キーパス「AppSettings:token」を使用すると、値を簡単に取得できます。

強化されたアプローチ: オプション パターン (ASP.NET Core 2.0 で推奨)

ASP.NET Core 2.0 以降の場合、オプション パターンはより構造化されたアプローチを提供します。

構成を表すクラスを定義します。

<code class="language-csharp">public class AppSettings
{
    public string Token { get; set; }
}</code>

Startup.cs で、IOptions<AppSettings> オブジェクトを構成して挿入します。

<code class="language-csharp">services.AddOptions<AppSettings>()
    .Configure<IConfiguration>((settings, configuration) =>
    {
        configuration.GetSection("AppSettings").Bind(settings);
    });</code>

次に、コントローラーで次のようにします:

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

    public HomeController(IOptions<AppSettings> appSettings)
    {
        _appSettings = appSettings;
    }

    public IActionResult Index()
    {
        var token = _appSettings.Value.Token;
        return View(token);
    }
}</code>

この方法では、以前のアプローチと比較して型の安全性が提供され、保守性が向上します。 これは、新しい ASP.NET Core プロジェクトで推奨される方法です。

以上がASP.NET Core で JSON ファイルから AppSettings 値を読み取る方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。