ASP.NET 7 Core Web 读取appsetting.json

把一些配置信息保存在json文件可以避免更改时要重新发布程序的烦恼。

我这里使用的是写一个类文件,然后通过program.cs启动的方式(.net 6 开始没有startup了)。

项目类型:ASP.NET Core Web MVC   /  .NET 7.0  / VS2022

第一步:用NuGet 安装:.Microsoft.Extensions.Configuration

第二步:编写一个类文件 Mycofig(类名随意),用于读取appsetting.json

public class Myconfig
{
    private static IConfiguration _config;

    public Myconfig(IConfiguration configuration) 
    { 
        _config = configuration; 
    }


    public static string ReadAppSettings(params string[] sessions)
    {
        try
        {
            if (sessions.Any())
            {
                return _config[string.Join(":", sessions)];
            }
        }
        catch
        {
            return "";
        }
        return "";
    }
}

第三步:在Program.cs中启动

//创建一个IConfiguration对象
IConfiguration configuration = new ConfigurationBuilder()
.AddJsonFile("appsettings.json").Build();

// 这句原本就有
builder.Services.AddControllersWithViews();

//把添加的IConfiguration对象传入Myconfig并创建加入启动
builder.Services.AddSingleton(new Myconfig(configuration));

第四步:在需要的地方读取

/// 
/// Mysql-01数据库链接串
/// 
public static string Mysql_conn = Myconfig.ReadAppSettings("MySettings", "Mysqlstr");

appsetting.json样子

{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft.AspNetCore": "Warning"
    }
  },
  "AllowedHosts": "*",
  "MySettings": {
    "Mysqlstr": "**************"
  }
}

你可能感兴趣的:(json,asp.net,后端)