.netcore2.1在控制器中和类中,获取appsettings中值的方法

  一般我们在开发项目中,都会从配置文件中获取数据库连接信息、自定义参数配置信息等。

  在.netcore中在控制器和自定义类中,获取配置文件中参数方式如下:

  • appsettings.json
复制代码
{
  
  "Api": {
    "TencentApi": "https://api.weixin.qq.com/cgi-bin"
  },
  "TencentJSJDK": {
    "AppId": "asdfasdf",
    "Secret": "asfxvzvzx"
  }
}
复制代码
  • controller中调用如下红色字体,注入TencentSignHelper类后,我们就可以像调用静态方法一样,调用_jsSignHelper里面的方法了。
复制代码
 private ApplicationDbContext _IdentityDb;
        private readonly IConfiguration _configuration;
        private TencentSignHelper _jsSignHelper;
        private string appId;
        public ShareController(ApplicationDbContext identityDb, IConfiguration configuration, TencentSignHelper jsSignHelper)
        {
            _IdentityDb = identityDb;
            _configuration = configuration;
            appId = _configuration.GetSection("TencentJSJDK:AppId").Value;
            _jsSignHelper = jsSignHelper;

        }
复制代码
  • 类中调用
复制代码
public class TencentSignHelper
    {
        private  string _tencentApi { get; set; }
        private  string _appid { get; set; }
        private  string _appSecret { get; set; }

        public TencentSignHelper(IConfiguration config)
        {
           
            _tencentApi = config["Api:TencentJSJDKBaseApi"]; 
            _appid = config["TencentJSJDK:AppId"];
            _appSecret = config["TencentJSJDK:Secret"];
        }
}
复制代码

  需要注意的是TencentSignHelper需要在Startup类中ConfigureServices方法中进行注入服务

1
2
3
4
5
6
7
public void ConfigureServices(IServiceCollection services)
{
           services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
 
           services.AddSingleton<TencentSignHelper>();
 
}

  今天就写到这,希望对需要的博有有所帮助。

  

posted @   低调码农哥!  阅读(1629)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示