用NetCore作項目若是用EF ORM在網上有不少的配置鏈接字符串,讀取以及使用方法git
因爲不少朋友用的其餘ORM如SqlSugar,NH,Dapper等,在讀取鏈接字符串的時候,每每把信息保存到一個配置文件中,例如appsetting.json,github
網上有不少關於讀取appsetting.json都是經過注入的方式, 在ORM讀取配置的時候,都是在一個類庫裏面,因此用注入的方式有時候不適合【我的理解】數據庫
因以上場景,下面這個方法讀取配置能夠在任何地方使用json
喜歡NetCore的朋友,歡迎加羣QQ:86594082app
源碼地址:https://github.com/feiyit/SoaProJect測試
一、在項目中,新建一個NetCore的類庫,建立類ConfigServicesui
namespace Core.Extensions { /// <summary> /// 讀取配置文件 /// </summary> public class ConfigServices { public static IConfiguration Configuration { get; set; } static ConfigServices() { //ReloadOnChange = true 當appsettings.json被修改時從新加載 Configuration = new ConfigurationBuilder() .Add(new JsonConfigurationSource { Path = "appsettings.json", ReloadOnChange = true }) .Build(); } } }
二、在Web項目下面appsettings.json裏面增長自定義的配置spa
{ "DBConnection": { "MySqlConnectionString": "server=localhost;database=fyt_ims;uid=root;pwd=123456;charset='utf8';SslMode=None" }, "Logging": { "IncludeScopes": false, "LogLevel": { "Default": "Warning" } } }
三、新建一個讀取配置的類3d
namespace FytErp.Core.Model.ConfigModel { /// <summary> /// 數據庫鏈接字符串 /// </summary> public class DBConnection { /// <summary> /// MySql數據庫鏈接字符串 /// </summary> public string MySqlConnectionString { get; set; } /// <summary> /// SqlServer數據庫鏈接字符串 /// </summary> public string SqlServerConnectionString { get; set; } } }
四、編寫測試讀取配置code
namespace FytErp.Web.Pages { public class IndexModel : PageModel { public DbConnection DbSetting { get; private set; } public void OnGet() { //得到配置文件中的DBConnection節點 DbSetting = ConfigServices.Configuration.GetSection("DbConnection").Get<DbConnection>(); } } }
五、最終讀取結果