首页 > 后端开发 > C++ > 如何从 ASP.NET Core 中的 appsettings.json 访问配置值?

如何从 ASP.NET Core 中的 appsettings.json 访问配置值?

Linda Hamilton
发布: 2025-01-13 15:51:48
原创
296 人浏览过

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

在ASP.NET Core中读取appsettings.json配置值的方法

概述

在ASP.NET Core中访问存储在appsettings.json文件中的配置数据,可以使用配置构建器或选项模式。

使用配置构建器

方法一:使用ConfigurationBuilder.GetValue()

  • 将IConfiguration接口注入到您的类或控制器中。
  • 使用GetValue方法检索特定键的值,并指定值的类型。

方法二:使用ConfigurationBinder

  • 将ConfigurationBinder实例作为参数添加到您的方法中。
  • 使用Bind方法将对象绑定到配置值。

使用选项模式

1. 定义配置类

  • 创建反映您的配置数据结构的C#类。
  • 这些类中的每个属性都应与相应的配置键匹配。

2. 注册配置实例

  • 在启动类的ConfigureServices方法中,使用services.Configure注册配置实例。

3. 注入IOptions

  • 将IOptions注入到您的类或控制器中。
  • 使用Value属性访问强类型配置对象。

示例

appsettings.json:

<code class="language-json">{
  "ConnectionStrings": {
    "DefaultConnection": "Server=localhost;Database=MyDatabase"
  },
  "AppIdentitySettings": {
    "User": {
      "RequireUniqueEmail": true
    },
    "Password": {
      "RequiredLength": 8
    }
  }
}</code>
登录后复制

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>
登录后复制

Controller.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>
登录后复制

请注意,以上代码片段中ConnectionStringSettingsAppIdentitySettings需要您自行定义对应的C#类来匹配appsettings.json中的结构。 这两种方法提供了灵活的方式来访问您的应用程序配置。 选择哪种方法取决于您的偏好和应用程序的复杂性。

以上是如何从 ASP.NET Core 中的 appsettings.json 访问配置值?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板