背景:在做winform的时候很经常就是将数据库的连接字符串信息保存到配置文件中,今天突然发现asp.net core webapi中的获取方式是很不一样的。
在.net framework中
配置文件在App.config中
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" />
</startup>
<connectionStrings>
<add name = "connString" connectionString="Server=LAPTOP-61GDB2Q7\SQLEXPRESS;DataBase=SMDB;Uid=sa;Pwd=root123;
Pooling = true;Max Pool size = 10; Min Pool size = 5;"/>
</connectionStrings>
</configuration>
-- 第二个就是我们自己增加的数据库连接字符串
获取的话使用ConfigurationManager
private static readonly string connString = ConfigurationManager.ConnectionStrings["connString"].ToString();
在asp.net core webapi中
配置文件保存在appsettings.json中
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"AllowedHosts": "*",
"DBConnectStr": "server=LAPTOP-61GDB2Q7\\SQLEXPRESS;Database=smartPark_record;Trusted_Connection=True"
}
-- 第二个就是我们自己增加的数据库连接字符串
这个的是使用最好是自己写一个Configuration类,用于对配置文件的访问
using IConfiguration;
using Microsoft.Extensions.Configuration;
using System;
using System.IO;
namespace Configuration
{
public class Configuration : IConfiguration.IConfiguration
{
private static IConfigurationRoot configurationRoot;
static Configuration()
{
// 这最后的两个拓展方法要安装Configuration.FileExtensions和Configuration.Json才能用
var builder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json");
configurationRoot = builder.Build();
}
// 通过这个就可以获取配置文件的值了
public string Read(string key)
{
return configurationRoot[key];
}
}
}
-- 这两个拓展方法使用的NuGet包都是官方提供的
要使用了就可以通过构造方法注入,然后调用Read方法
标签:string,配置文件,--,获取,configurationRoot,using,Configuration From: https://blog.csdn.net/weixin_46407807/article/details/137361106