.NET Core类库中读取配置文件
2018-03-07 14:59
591 查看
最近在开发基于.NET Core的NuGet包,遇到一个问题:
.NET Core中已经没有
但,我们可以自己写少量代码来实现在类库中读取配置文件信息。
若存在,则读取改文件中的配置信息
不存在,则到根目录中寻找
实现代码
测试代码如下:
测试通过:
顺道安利下一款用于.NET开发的跨平台IDE——Rider,以上代码均在Rider中编写。
这是NuGet包项目地址:https://github.com/CwjXFH/WJChiLibraries,希望大家多多指点。
如有问题, 请发送邮件和作者联系。
.NET Core中已经没有
ConfigurationManager类,在类库中无法像.NET Framework那样读取
App.config或
Web.config(.NET Core中是appsetings.json)文件中的数据。
但,我们可以自己写少量代码来实现在类库中读取配置文件信息。
思路:
先在当前目录下寻找appsettings.json文件
若存在,则读取改文件中的配置信息
不存在,则到根目录中寻找
appsettings.json文件
具体做法如下:
使用NuGet安装Microsoft.Extensions.Configuration.Json包
实现代码
public static class ConfigHelper { private static IConfiguration _configuration; static ConfigHelper() { //在当前目录或者根目录中寻找appsettings.json文件 var fileName = "appsettings.json"; var directory = AppContext.BaseDirectory; directory = directory.Replace("\\", "/"); var filePath = $"{directory}/{fileName}"; if (!File.Exists(filePath)) { var length = directory.IndexOf("/bin"); filePath = $"{directory.Substring(0, length)}/{fileName}"; } var builder = new ConfigurationBuilder() .AddJsonFile(filePath, false, true); _configuration = builder.Build(); } public static string GetSectionValue(string key) { return _configuration.GetSection(key).Value; } }
测试
在根目录下或当前目录下添加appsetting.json文件,并添加节点:
{ "key": "value" }
测试代码如下:
public class ConfigHelperTest { [Fact] public void GetSectionValueTest() { var value = ConfigHelper.GetSectionValue("key"); Assert.Equal(value, "value"); } }
测试通过:
顺道安利下一款用于.NET开发的跨平台IDE——Rider,以上代码均在Rider中编写。
这是NuGet包项目地址:https://github.com/CwjXFH/WJChiLibraries,希望大家多多指点。
相关阅读
Configure an ASP.NET Core App版权声明
本文为作者原创,版权归作者雪飞鸿所有。 转载必须保留文章的完整性,且在页面明显位置处标明原文链接。如有问题, 请发送邮件和作者联系。
相关文章推荐
- .NET Core简单读取json配置文件
- ASP.NET Core实现类库项目读取配置文件
- .net core 读取配置文件
- .net core 学习笔记(5)-配置文件读取
- ASP.NET Core实现类库项目读取配置文件
- 如何在ASP.NET Core类库项目中读取配置文件详解
- .Net Core 读取配置文件
- .NET Core在类库中读取配置文件appsettings.json
- 读取应用程序/类库配置文件(比如***.dll.config)的方法小结
- 【Config】类库读取自己的配置文件,配置文件的扩展
- 读取应用程序/类库配置文件(比如***.dll.config)的方法小结
- .NET Core 读取配置文件
- 使用.net core读取Json文件配置
- .Net Core 读取配置文件 appsettings.json
- NET Core开发-读取配置文件Configuration
- [总结]读取应用程序/类库配置文件(比如***.dll.config)的方法小结
- 类库如何读取配置文件(app.config)?
- .Net Core从命令行读取配置文件
- [.NET Core] 简单读取 json 配置文件
- 使用VS Code开发.Net Core 2.0 MVC Web应用程序教程之三(配置文件读取)