摘要
为了让Wsk.Core.Package新项目更加通用,我们需要使用Microsoft.Extensions.Configuration包来加载appsettings文档和环境变量。在新项目中,我们将appsettings.json文件设置为始终复制。同时,我们还创建了一个名为Common的文件夹,用于存放Java工具新项目。让我们一起开始Wsk项目的新篇章吧!
正文
八、.net core(.NET 6)配备载入appsettings文档內容的通用性作用
加上通用性载入环境变量作用
在Wsk.Core.Package新项目下,增加Microsoft.Extensions.Configuration包:
在运行新项目下,设定appsettings.json特性为自始至终拷贝:
新创建一个文件夹名称Common,用以储放java工具新项目。而且新建项目:Wsk.Core.AppSettings,引入package包新项目,随后新创建一个载入环境变量的通用性类,叫AppHelper。文件目录构造如图所示:
在AppHelper类里边,新创建静态数据操作步骤相关编码,用以载入根目录下的环境变量信息内容:
编码:
public class AppHelper { private static IConfiguration _config; public AppHelper(IConfiguration configuration) { _config = configuration; } /// <summary> /// 载入特定连接点的字符串数组 /// </summary> /// <param name="sessions"></param> /// <returns></returns> public static string ReadAppSettings(params string[] sessions) { try { if (sessions.Any()) { return _config[string.Join(":", sessions)]; } } catch { return ""; } return ""; } /// <summary> /// 载入实体线信息内容 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="session"></param> /// <returns></returns> public static List<T> ReadAppSettings<T>(params string[] session) { List<T> list = new List<T>(); _config.Bind(string.Join(":", session), list); return list; } }
View Code
在运行新项目下,加密文件夹ConfigServices,用以储放各种各样服务项目的加上新项目。
如今,看下现阶段的开机启动项下的ConfigureServices方式:
大家把该方式做一个简单化。在ConfigServices下新创建一个静态类,叫 WskService,用以载入各种各样内置的方式开展集成化;再新创建一个静态类SwaggerService,用以储放Swagger作用的集成化:
随后,把swagger的作用开展移殖,在SwaggerService类下边开展申请注册:
再把上边有一个加上控制板的作用开展申请注册到WskService下边。随后,把对swagger的申请注册也添加到该服务项目下:
最终,在ConfigureServices下边把全部內容删除,随后加上WskServices的申请注册:
下面,加上对刚大家写的载入环境变量类的申请注册。在ConfigureServices里边开展加上申请注册单例模式,放到申请注册服务项目的最上边,那样别的服务项目就可以在申请注册情况下还可以引入该作用开展载入环境变量了:
如今做一个检测,在环境变量里边新创建一段配备信息内容:
json內容:
"Test": { "A": "Hello", "B": { "C": "World" } }
在控制板方式里边,做一个打印测试:
实例编码:
[HttpPost] public IActionResult HelloWorld() { string a= AppHelper.ReadAppSettings("Test", "A"); string b = AppHelper.ReadAppSettings("Test", "B", "C"); return Ok($"{a} ***** {b}"); }
View Code
运行程序流程,并实行api,看一下回到的結果:
回到取得成功,此篇完成。假如有效,热烈欢迎评价、打赏主播、关注点赞或分享。版权声明,分享请标明来源:https://www.cnblogs.com/weskynet/p/14843324.html
关注不迷路
扫码下方二维码,关注宇凡盒子公众号,免费获取最新技术内幕!
评论0