.net core options 依赖注入的方式

本文详细介绍了JWT设置选项的依赖注入方法,包括三种不同的配置方式:通过服务集合添加选项并绑定配置、直接创建实例并绑定配置,以及使用ConfigurationBinder.Get方法。同时,展示了如何在appsettings.json中配置JWT相关参数,并通过构造函数注入获取这些设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

options 依赖注入的方式

 public class JwtSettingsOptions
    {

        public const string JwtSettings = "JwtSettings";


        /// <summary>
        /// 发行人
        /// </summary>
        public string Issuer { get; set; }

        /// <summary>
        /// 订阅者
        /// </summary>
        public string Audience { get; set; }


        /// <summary>
        /// 加密key
        /// </summary>
        public string SecurityKey { get; set; }


        /// <summary>
        /// 过期分钟
        /// </summary>
        public int ExpMinutes { get; set; }

    }

方法1

services.AddOptions<JwtSettingsOptions>().Bind(Configuration.GetSection(JwtSettingsOptions.JwtSettings));

方法2

var jwtSettingsOptions = new JwtSettingsOptions();
Configuration.GetSection(JwtSettingsOptions.JwtSettings).Bind(positionOptions);

方法3
//使用 ConfigurationBinder.Get 可能比使用 ConfigurationBinder.Bind 更方便。

var jwtSettingsOptions = new JwtSettingsOptions();
jwtSettingsOptions = Configuration.GetSection(JwtSettingsOptions.JwtSettings).Get<JwtSettingsOptions>();

appsettings.json

{
  "JwtSettings": {
    "SecurityKey": "BB3647441FF3333A4B5D344B4E64A29B53CE525",
    "Audience": "autience",
    "Issuer": "isuser",
    "ExpMinutes": 120
  }
}

通过构造函数获取实例

private IOptions<JwtSettingsOptions> _options;

public HomeController( IOptions<JwtSettingsOptions> options)
{
  _options = options;

 JwtSettingsOptions  jwtSetting =_options.Value;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值