.netcore2.1在控制器中和类中,获取appsettings中值的方法
程序员文章站
2022-04-09 09:01:25
一般我们在开发项目中,都会从配置文件中获取数据库连接信息、自定义参数配置信息等。 在.netcore中在控制器和自定义类中,获取配置文件中参数方式如下: appsettings.json controller中调用如下红色字体,注入TencentSignHelper类后,我们就可以像调用静态方法一样 ......
一般我们在开发项目中,都会从配置文件中获取数据库连接信息、自定义参数配置信息等。
在.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方法中进行注入服务
public void configureservices(iservicecollection services)
{
services.addmvc().setcompatibilityversion(compatibilityversion.version_2_1);
services.addsingleton<tencentsignhelper>();
}
今天就写到这,希望对需要的博有有所帮助。
下一篇: 几款免费开源的不用数据库的php的cms