看好多人不懂在.NET CORE中如何讀取配置文件,我這裡分兩篇,這一篇介紹怎樣通過appsettings.json配置讀取文件信息。這裡我會教大家兩種方式: 第一種直接放到通用類庫,那裡想調往那調。 1.編輯我們的appsettings.json文件 2.通用類庫Common添加引用類庫Micro ...
看好多人不懂在.NET CORE中如何讀取配置文件,我這裡分兩篇,這一篇介紹怎樣通過appsettings.json配置讀取文件信息。這裡我會教大家兩種方式:
第一種直接放到通用類庫,那裡想調往那調。
1.編輯我們的appsettings.json文件
{ "Logging": { "LogLevel": { "Default": "Information", "Microsoft": "Warning", "Microsoft.Hosting.Lifetime": "Information" } }, "ConnectionStrings": { "TestConnection": "server=123;User ID=jiyuwu;Password=123456;database=jiyuwu;", "Redis": "127.0.0.1:6379" }, "AllowedHosts": "*" }
2.通用類庫Common添加引用類庫Microsoft.Extensions.Configuration.Json並添加AppSettingsHelper.cs
Install-Package Microsoft.Extensions.Configuration.Json -Version 3.0.0
using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Configuration.Json; using System; using System.Collections.Generic; using System.Text; namespace Common { public class AppSettingsHelper { public static IConfiguration Configuration { get; set; } static AppSettingsHelper() { //ReloadOnChange = true 當appsettings.json被修改時重新載入 Configuration = new ConfigurationBuilder() .Add(new JsonConfigurationSource { Path = "appsettings.json", ReloadOnChange = true }) .Build(); } } }
3.調用
string sqlString= AppSettingsHelper.Configuration.GetConnectionString("TestConnection"); string sqlString1 = AppSettingsHelper.Configuration["Logging:LogLevel:Default"];
第二種直接讀文件調用。
1.引用類庫並讀取文件獲取配置
Install-Package Microsoft.Extensions.Configuration.Json -Version 3.0.0
public IConfiguration Configuration; public void TestAppSettings() { var builder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true); Configuration = builder.Build(); string sqlString2 = Configuration["Logging:LogLevel:Default"]; }
簡單介紹下原理:
我們通過ConfigurationBuilder
對象來創建ConfigurationRoot
對象,並用其來讀取配置。SetBasePath()
方法是用來設置我們配置對象需要的配置文件的基礎路徑,比如我們將基礎路徑設置為C:\TemplateCore\TemplateCore
,那麼他讀取我們的配置文件appsettings.json
的路徑將是C:\TemplateCore\TemplateCore\appsettings.json
開源地址:https://github.com/jiyuwu/TemplateCore
測試瀏覽效果:http://127.0.0.1:1994/home/TestAppSettings
幫助到你的話請點個推薦,謝謝。