我是靠谱客的博主 虚幻寒风,最近开发中收集的这篇文章主要介绍.NET Core2.1如何获取自定义配置文件信息详解,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前言

.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);
  }
 }

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

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对靠谱客的支持。

最后

以上就是虚幻寒风为你收集整理的.NET Core2.1如何获取自定义配置文件信息详解的全部内容,希望文章能够帮你解决.NET Core2.1如何获取自定义配置文件信息详解所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(93)

评论列表共有 0 条评论

立即
投稿
返回
顶部