netcore读取json文件_【NET Core】.NET Core中读取json配置文件

在.NET Framework框架下应用配置内容一般都是写在Web.config或者App.config文件中,读取这两个配置文件只需要引用System.Configuration程序集,分别用

System.Configuration.ConfigurationManager.AppSettings["SystemName"];//读取appSettings配置

System.Configuration.ConfigurationManager.ConnectionStrings["DBConnectionStr"];//读取connectionStrings配置

读取配置文件和数据库链接。

.NET Core配置文件为appsettings.json,为了满足在各个不同类中都能便捷的读取appsettings.json中的配置,所以我需要将读取appsettings.json封装到类库中。在Startup中读取就不说了,appsettings.json文件内容如下:

{"Logging": {"IncludeScopes": false,"LogLevel": {"Default": "Warning"}

},"ConnectionStrings": {"TestConnection": "Server=.;Database=OWNDB;User ID=sa;Password=123456;Trusted_Connection=False;"},"Appsettings": {"SystemName": "PDF .NET CORE","Date": "2017-07-23","Author": "PDF"},"ServiceUrl": "http://www.cnblogs.com/chuankang/"}

建一个项目名称为NetCore.Common的类库项目,并给该类库项目引入 Microsoft.Extensions.Configuration 和 Microsoft.Extensions.Configuration.Json程序包,类库中加载appsettings.json配置文件代码如下:

usingMicrosoft.Extensions.Configuration;usingMicrosoft.Extensions.Configuration.Json;namespaceNetCore.Common

{///

///读取配置文件///

public classAppConfigurtaionServices

{public static IConfiguration Configuration { get; set; }staticAppConfigurtaionServices()

{//ReloadOnChange = true 当appsettings.json被修改时重新加载

Configuration = newConfigurationBuilder()

.Add(new JsonConfigurationSource { Path = "appsettings.json", ReloadOnChange = true})

.Build();

}

}

}

读取配置文件的代码完成了,只要引用了NetCore.Common类库的项目中都能方便读取数据库链接字符串和其他配置,使用方法如下:

AppConfigurtaionServices.Configuration.GetConnectionString("TestConnection");//得到 Server=.;Database=OWNDB;User ID=sa;Password=123456;Trusted_Connection=False;

读取一级配置节点配置

AppConfigurtaionServices.Configuration["ServiceUrl"];//得到 http://www.cnblogs.com/chuankang/

读取二级子节点配置

AppConfigurtaionServices.Configuration["Appsettings:SystemName"];//得到 PDF .NET CORE

AppConfigurtaionServices.Configuration["Appsettings:Author"];//得到 PDF

注意,如果AppConfigurtaionServices类中抛出FileNotFoundException异常,说明目录下未找到appsettings.json文件,这时请在项目appsettings.json文件上右键——属性——将“复制到输出目录”项的值改为“如果较新则复制”即可。

2cee6a636e4ae519f6da1d5c6995e743.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值