直接上代码吧:
public static string ReadConnectString(string connectName)
{
var config = new ConfigurationBuilder().Add(new JsonConfigurationSource()
{
Path = "appsettings.json",
Optional = true
}).Build();
var connectionString = config.GetConnectionString(connectName);
if(string.IsNullOrEmpty(connectionString))
{
LogHelper.WriteErrorLog($"在appsettings.json中,无法找到名称为{connectName}的连接字符串");
return null;
}
return connectionString;
}
配置文件如下:
{
"ConnectionStrings": {
"DefaultConnection": "Server=.;Database=数据库名称;Trusted_Connection=True;MultipleActiveResultSets=true"
},
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"AllowedHosts": "*"
}
按照这个配置文件,上面函数传入的参数应该是:DefaultConnection。
这里要引入2个程序集:
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Configuration.Json;
我这里写的是只读取appsettings.json里面的连接字符串,如果要读取自定义的配置,则要调用GetSection。