视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
.NET Core2.1如何获取自定义配置文件信息详解
2020-11-27 22:34:59 责编:小采
文档


前言

.net core来势已不可阻挡。既然挡不了,那我们就顺应它。了解它并学习它。今天我们就来看看和之前.net版本的配置文件读取方式有何异同,这里不在赘述.NET Core 基础知识。下面话不多说了,来一起看看详细的介绍吧

实现

注:需要NuGet引入:Microsoft.Extensions.Options.ConfigurationExtensions

①我们再配置文件appsettings.json中 新增自定义API Json如下:

{
 "Logging": {
 "IncludeScopes": false,
 "LogLevel": {
 "Default": "Warning"
 }
 },
 "API": {
 "Url": "http://localhost:8080/",
 "getclub": "api/club"
 } 
}

②然后我们定义一个静态类,再类中申明一个IConfigurationSection 类型变量

private static IConfigurationSection _appSection = null;

③写一个AppSetting静态方法获取到配置的Value项,代码如下:

 public static string AppSetting(string key)
 {
 string str = string.Empty;
 if (_appSection.GetSection(key) != null)
 {
 str = _appSection.GetSection(key).Value;
 }
 return str;
 }

④需要设置IConfigurationSection初始值,如下:

 public static void SetAppSetting(IConfigurationSection section)
 {
 _appSection = section;
 }

⑤然后写一个根据不同Json项读取出对应的值即可:

 public static string GetSite(string apiName)
 {
 return AppSetting(apiName);
 }

⑥有了以上几个步骤,基本上读取代码已经全部写完,剩下最后一个最重要的步骤,将要读取的Json文件配置到Startup.cs的Configure方法中,如下:

这样,我们就可以很轻松的获取到我们想要的配置项了,整段CS代码如下:

 /// <summary>
 /// 配置信息读取模型
 /// </summary>
 public static class SiteConfig
 {
 private static IConfigurationSection _appSection = null;

 /// <summary>
 /// API域名地址
 /// </summary>
 public static string AppSetting(string key)
 {
 string str = string.Empty;
 if (_appSection.GetSection(key) != null)
 {
 str = _appSection.GetSection(key).Value;
 }
 return str;
 }

 public static void SetAppSetting(IConfigurationSection section)
 {
 _appSection = section;
 }

 public static string GetSite(string apiName)
 {
 return AppSetting(apiName);
 }
 }

最后 ,我们来跑一下演示效果如下:

总结

下载本文
显示全文
专题