欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

.Net Core庫(kù)類(lèi)項(xiàng)目跨項(xiàng)目讀取配置文件的方法

 更新時(shí)間:2019年03月19日 10:44:15   作者:自甘墮落的空想家  
這篇文章主要介紹了.Net Core庫(kù)類(lèi)項(xiàng)目跨項(xiàng)目讀取配置文件的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

在項(xiàng)目開(kāi)始之前我們可以先去了解一下IConfiguration接口,.Net Core Web應(yīng)用程序類(lèi)似于一個(gè)控制臺(tái),當(dāng)程序運(yùn)行到Startup時(shí)會(huì)自動(dòng)注入IConfiguration,默認(rèn)讀取當(dāng)前.Net Core Web應(yīng)用程序中的appsettings.json文件。讀取當(dāng)前.Net Core Web應(yīng)用程序的配置文件可以自動(dòng)直接注入,但如果我們需要使另一個(gè)類(lèi)庫(kù)項(xiàng)目讀取到指定.Net Core Web應(yīng)用程序中的配置文件,需要怎么做?憑借Asp.Net Core無(wú)處不在的“依賴注入”,我們可以在Startup執(zhí)行時(shí)將讀取的配置信息注入到類(lèi)庫(kù)項(xiàng)目中,之后我們可以愉快的使用配置信息了

新建一個(gè).Net Core的類(lèi)庫(kù)項(xiàng)目和.Net Core Web應(yīng)用程序,修改Web應(yīng)用程序中的appsettings.json文件加入數(shù)據(jù)庫(kù)連接字符串用于之后的試驗(yàn)。

{
 "WebConfig": {
  "OracleConnectionString": "User Id=fjh;Password=fjh_123;Data Source=(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)))(CONNECT_DATA = (SERVICE_NAME = orcl)));Pooling = True;Max Pool Size = 800;Min Pool Size = 1;Connect Timeout=5;"
 },
 "Logging": {
  "LogLevel": {
   "Default": "Warning"
  }
 },
 "AllowedHosts": "*"
}

.Net Core的類(lèi)庫(kù)項(xiàng)目中新建一個(gè)靜態(tài)類(lèi):ConfigurationHelper.cs

使用IConfiguration接口需要添加依賴項(xiàng):Microsoft.Extensions.Configuration

using Microsoft.Extensions.Configuration;

namespace Read_Configuration_File
{
  public class ConfigurationHelper
  {
    private static IConfiguration _config;
    public static void Configure(IConfiguration config)
    {
      _config = config;
    }
    /// <summary>
    /// 根據(jù)配置文件鍵讀取對(duì)應(yīng)的值
    /// </summary>
    /// <param name="Key"></param>
    /// <returns></returns>
    public static string GetConfigValueByKey(string Key)
    {
      var value = _config[Key];
      return value;
    }
  }
}

創(chuàng)建一個(gè)靜態(tài)字段_config用來(lái)存儲(chǔ)配置信息,同時(shí)定義一個(gè)靜態(tài)方式通過(guò)配置文件的鍵值獲取對(duì)應(yīng)的值。

.Net Core的類(lèi)庫(kù)項(xiàng)目中新建一個(gè)靜態(tài)類(lèi):Utilconfig.cs

創(chuàng)建一個(gè)只讀靜態(tài)字段OracleConnectionString存儲(chǔ)根據(jù)鍵值獲得的配置文件的值

namespace Read_Configuration_File
{
  public static class UtilConfig
  {
    public static string OracleConnectionString => ConfigurationHelper.GetConfigValueByKey("WebConfig:OracleConnectionString") == null ? "" : string.Format(ConfigurationHelper.GetConfigValueByKey("WebConfig:OracleConnectionString"));
  }
}

最關(guān)鍵的一步,修改.Net Core Web應(yīng)用程序中的Startup.cs

我們需要將配置信息注入到類(lèi)庫(kù)項(xiàng)目,需要使用ConfiurationHelper類(lèi)下的靜態(tài)方法。在創(chuàng)建的.Net Core Web應(yīng)用程序的Startup文件中調(diào)用Configure方法,使用前不要忘了先引用類(lèi)庫(kù)項(xiàng)目

到這里為止,我們可以調(diào)用靜態(tài)類(lèi)UtilConfig中的靜態(tài)只讀字段OracleConnectionString愉快的使用.Net Core Web應(yīng)用程序的配置信息。

接下來(lái)我們來(lái)驗(yàn)證一下項(xiàng)目是否成功

在.Net Core庫(kù)類(lèi)項(xiàng)目中新建一個(gè)類(lèi):ConnectionRead

創(chuàng)建一個(gè)靜態(tài)方法GetConnectionStr()返回獲取到的配置文件信息

namespace Read_Configuration_File
{
  public class ConnectionRead
  {
    /// <summary>
    /// 定義一個(gè)靜態(tài)方法獲取連接字符串
    /// </summary>
    /// <returns></returns>
    public static string GetConnectionStr()
    {
      var connStr = UtilConfig.OracleConnectionString;
      return connStr;
    }
  }
}

項(xiàng)目結(jié)構(gòu)

在.Net Core Web項(xiàng)目中的HomeController主頁(yè)中調(diào)用這個(gè)靜態(tài)方法,如果能正確讀取到配置文件的值,那項(xiàng)目就成功了

修改一下主頁(yè)

執(zhí)行文件我們可以發(fā)現(xiàn)主頁(yè)上顯示了我們想要讀取的數(shù)據(jù)庫(kù)連接的配置信息。Nice!成功

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論