干货:.net core实现读取自定义配置文件,有源代码哦
程序员文章站
2023-11-09 21:40:58
看好多人不懂在.NET CORE中如何读取配置文件,我这里分了两篇,上一篇介绍了怎样通过appsettings.json配置读取文件信息。这一篇教大家自定义配置文件: 1.在项目下创建配置文件 2.引用类库Microsoft.Extensions.Configuration.Json并创建配置文件操 ......
看好多人不懂在.net core中如何读取配置文件,我这里分了两篇,上一篇介绍了怎样通过appsettings.json配置读取文件信息。这一篇教大家自定义配置文件:
1.在项目下创建配置文件
{ "filemap": { "imgpath": "d:\\myfile\\misc\\npspower\\templatecore\\templatecore\\wwwroot\\upimg\\", "imgweb": "http://127.0.0.1:1994/upimg/", "filepath": "d:\\myfile\\misc\\npspower\\templatecore\\templatecore\\wwwroot\\upfile\\", "fileweb": "http://127.0.0.1:1994/upfile/", "videopath": "d:\\myfile\\misc\\npspower\\templatecore\\templatecore\\wwwroot\\upvideo\\", "videoweb": "http://127.0.0.1:1994/upvideo/", "web": "http://127.0.0.1:1994/" } }
2.引用类库microsoft.extensions.configuration.json并创建配置文件操作类confighelper.cs
install-package microsoft.extensions.configuration.json -version 3.0.0
using microsoft.extensions.configuration; using system; using system.collections.generic; using system.io; using system.text; namespace common { public class confighelper { private static iconfiguration _configuration; static confighelper() { //在当前目录或者根目录中寻找文件 var filename = "config/managerconfig.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; } } }
3.在项目中读取配置文件
string imgpath = confighelper.getsectionvalue("filemap:imgpath"); return imgpath;
开源地址:https://github.com/jiyuwu/templatecore
测试浏览效果:http://127.0.0.1:1994/home/testconfig
帮助到你的话请点个推荐,谢谢。