栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > .Net

二、读取appsettings.json配置

.Net 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

二、读取appsettings.json配置

本文章基于VS2022   .Net6 

.Net Core WebApi项目中我们将把配置文件统一放在appsettings.json文件中,我们将写一个读取配置文件的公用类。

一、新建公共类库Common,用于存放一些公用方法

二、如上图:

使用Nuget安装

Microsoft.Extensions.Configuration

Microsoft.Extensions.Configuration.Json

Microsoft.Extensions.Configuration.Binder

三、Common类库新建AppSetting.cs,代码如下

using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Configuration.Json;

namespace Common.Helper
{
    /// 
    /// appsettings.json操作类
    /// 
    public class AppSetting
    {
        static IConfiguration Configuration { get; set; }
        static string ContentPath { get; set; }

        public AppSetting()
        {
            string path = "appsettings.json";
            Configuration = new ConfigurationBuilder().SetBasePath(ContentPath).Add(new JsonConfigurationSource
            {
                Path = path,
                Optional = false,
                ReloadOnChange = true
            }).Build();
        }
        public AppSetting(IConfiguration configuration)
        {
            Configuration = configuration;
        }

        /// 
        /// 获取指定属性值
        /// 
        /// 
        /// 
        public static string app(params string[] sections)
        {
            try
            {
                if (sections.Any())
                {
                    if (Configuration != null)
                    {
#pragma warning disable CS8603 // 可能返回 null 引用。
                        return Configuration[string.Join(":", sections)];
#pragma warning restore CS8603 // 可能返回 null 引用。
                    }
                }
            }
            catch (Exception ex)
            {

            }
            return "";
        }

        /// 
        /// 获取指定对象值
        /// 
        /// 
        /// 
        public static List app(params string[] sections)
        {
            List list = new List();
            Configuration.Bind(string.Join(":", sections), list);
            return list;
        }
    }
}

四、appsettings.json 内容如下

{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft.AspNetCore": "Warning"
    }
  },
  "AllowedHosts": "*",
  "AppSettings": {
    //数据库连接字符串
    "ConnectionStrings": "Server=127.0.0.1;User Id=id;Password=pwd;Database=dbname;"
  }
}

五、在项目 Program.cs 里使用 AddSingleton注册AppSetting,并测试读取AppSettings的ConnectionStrings,代码如下

//注册appsettings读取类
builder.Services.AddSingleton(new AppSetting(builder.Configuration));
//测试AppSetting操作
var text = AppSetting.app(new string[] { "AppSettings", "ConnectionStrings" });
Console.WriteLine($"ConnectionString:{text}");
Console.ReadLine();

六、运行测试结果如下

上一章:一、使用Swagger(接口文档工具)_XiaoGuaiSs的博客-CSDN博客前言:本次学习都是在VS2022上进行,其它VS版本实现可能存在差异,仅自己学习记录。一、创建项目,本章主要讲的是接口文档在线生成工具Swagger,需要创建WebAPI项目,点击下一步二、输入项目名称和选择项目存储位置,点击下一步三、取消勾选“配置HTTPS“项,勾选"启用OpenAPI支持"项,点击创建...https://blog.csdn.net/m0_37894611/article/details/123498165?spm=1001.2014.3001.5501下一章:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/903999.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号