最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

c#配置文件中自定義塊節(jié)點(diǎn)的方法

 更新時(shí)間:2023年10月08日 11:00:40   作者:大巨頭  
在.netcore中我們非常方便獲取配置文件節(jié)點(diǎn)參數(shù),但是在非.netcore下一般 我們是使用中方法,本文我們將給大家詳細(xì)介紹c#配置文件中自定義塊節(jié)點(diǎn)的方法,文中有詳細(xì)的代碼示例供大家參考,具有一定的參考價(jià)值,需要的朋友可以參考下

在.netcore中我們非常方便獲取配置文件節(jié)點(diǎn)參數(shù),但是在非.netcore下一般 我們是使用中方法。

  <appSettings>
         <add key="BranchCode" value="FS"/>
  </appSettings>

讀取方式也非常簡(jiǎn)單直接

   private string _defaultBranchCode = ConfigurationManager.AppSettings["BranchCode"].ToString();//運(yùn)營(yíng)中心

但是如果有很多參數(shù),這樣寫(xiě)感覺(jué)不夠美觀,以及容易遺漏。能否自定義一個(gè)塊節(jié)點(diǎn)呢? 答案是肯定了。

就這樣

  <pdd>
    <!--基礎(chǔ)域名-->
    <add key="base_uri" value="xxxxxx"/>
    <!--測(cè)試環(huán)境-->
    <!--拼多多開(kāi)放平臺(tái)分配給服務(wù)商應(yīng)用的唯一標(biāo)示-->
    <add key="target_client_id" value="xxxxxxx"/>
    <!-- 調(diào)用拼多多開(kāi)放平臺(tái) client_id-->
    <add key="client_id" value="xxxxxxx"/>
    <!--調(diào)用拼多多開(kāi)放平臺(tái) 秘鑰-->
    <add key="client_secret" value="xxxxxxxxf"/>
  </pdd>
 <configSections>
    <section name="pdd" type="System.Configuration.NameValueSectionHandler"/>
   </configSections>    

對(duì)應(yīng)讀取

  public class pddConfig : IPddConfig
    {
        private string _base_uri;
        private string _target_client_id;
        private string _client_id;
        private string _client_secret;
        public pddConfig()
        {
            try
            {
                var pddConfig = ConfigurationManager.GetSection("pdd") as NameValueCollection;
                _base_uri = pddConfig["base_uri"];
                _target_client_id = pddConfig["target_client_id"];
                _client_id = pddConfig["client_id"];
                _client_secret = pddConfig["client_secret"];
            }
            catch (Exception ex)
            {
                throw new Exception("PDD配置錯(cuò)誤, 請(qǐng)檢查配置文件", ex);
            }
        }
        public string base_uri { get { return _base_uri; } }
        public string target_client_id { get { return _target_client_id; } }
        public string client_id { get { return _client_id; } }
        public string client_secret { get { return _client_secret; } }
    }
     public interface IPddConfig
    {
        string base_uri { get; }
        string target_client_id { get; }
        string client_id { get; }
        string client_secret { get; }
    }

調(diào)用 。這里使用了注入,所以可以通過(guò)構(gòu)造函數(shù)獲取

  builder.RegisterType<pddConfig>().As<IPddConfig>().InstancePerRequest();
  builder.RegisterType<PddService>().As<IPddService>().InstancePerRequest();
    public interface IPddService
    {
    }
    public class PddService : IPddService
    {
        public static string base_uri;
        public static string target_client_id;
        public static string client_id;
        public static string client_secret;
        public readonly IPddConfig _pddConfig;
       public PddService(IPddConfig PddConfig)
        {
            _pddConfig = PddConfig;
            GetConfig();
        }
        public void GetConfig()
        {
            base_uri = _pddConfig.base_uri;
            target_client_id = _pddConfig.target_client_id;
            client_id = _pddConfig.client_id;
            client_secret = _pddConfig.client_secret;
        }
    }

有關(guān)System.Configuration.NameValueSectionHandler 理解 gpt平臺(tái)回答

System.Configuration.NameValueSectionHandler 是 .NET Framework 中的一個(gè)類(lèi),用于解析配置文件中的 Name-Value(鍵值對(duì))形式的節(jié)(section)。

在應(yīng)用程序或組件的配置文件(通常是 app.config 或 web.config)中,可以定義自定義的配置節(jié)來(lái)存儲(chǔ)特定的設(shè)置。NameValueSectionHandler 可以幫助解析這樣的配置節(jié),使其信息可供應(yīng)用程序使用。

NameValueSectionHandler 遵循配置節(jié)處理程序(Section Handler)的標(biāo)準(zhǔn)規(guī)范,它提供了解析配置節(jié)并返回鍵值對(duì)的功能,其中鍵和值都是字符串類(lèi)型。通過(guò)使用 NameValueSectionHandler,可以方便地讀取和解析配置文件中的特定配置節(jié),并將其作為鍵值對(duì)的集合在應(yīng)用程序中使用。

要使用 NameValueSectionHandler,需要在配置文件中定義一個(gè)自定義節(jié),并指定 type 屬性為 System.Configuration.NameValueSectionHandler。例如,在 app.config 文件中定義如下的配置:

<configuration>
  <configSections>
    <section name="MyCustomSection" type="System.Configuration.NameValueSectionHandler" />
  </configSections>
  <MyCustomSection>
    <add key="Key1" value="Value1" />
    <add key="Key2" value="Value2" />
  </MyCustomSection>
</configuration>

然后,可以通過(guò)以下方式在代碼中讀取和解析配置節(jié):

NameValueCollection mySection = ConfigurationManager.GetSection("MyCustomSection") as NameValueCollection;
string value1 = mySection["Key1"];
string value2 = mySection["Key2"];

上述代碼通過(guò) ConfigurationManager.GetSection 方法獲取指定名稱(chēng)的配置節(jié),并將其轉(zhuǎn)換為 NameValueCollection 對(duì)象。然后,通過(guò)鍵(Key)來(lái)獲取相應(yīng)的值(Value)。

需要注意的是,System.Configuration.NameValueSectionHandler 在 .NET Framework 4.0 及更高版本中已經(jīng)被廢棄,推薦使用更現(xiàn)代化的配置方式,例如使用自定義配置節(jié)和自定義配置節(jié)處理程序(Section Handler)來(lái)替代。

以上就是c#配置文件中自定義塊節(jié)點(diǎn)的方法的詳細(xì)內(nèi)容,更多關(guān)于c#配置自定義塊節(jié)點(diǎn)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • C#關(guān)于Func和Action委托的介紹詳解

    C#關(guān)于Func和Action委托的介紹詳解

    委托是存有對(duì)某個(gè)方法的引用的一種引用類(lèi)型變量,本文主要介紹了C#關(guān)于Func和Action委托的介紹,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • C#獲得文件屬性信息的實(shí)現(xiàn)方法

    C#獲得文件屬性信息的實(shí)現(xiàn)方法

    這篇文章主要介紹了C#獲得文件屬性信息的實(shí)現(xiàn)方法,對(duì)于C#初學(xué)者了解與學(xué)習(xí)應(yīng)用程序設(shè)計(jì)有一定的借鑒價(jià)值,需要的朋友可以參考下
    2014-07-07
  • C#環(huán)境下串口通信技術(shù)的技術(shù)體系與工程實(shí)踐詳解

    C#環(huán)境下串口通信技術(shù)的技術(shù)體系與工程實(shí)踐詳解

    串口通信(Serial?Communication)是工業(yè)控制、嵌入式開(kāi)發(fā)、物聯(lián)網(wǎng)領(lǐng)域最基礎(chǔ)也最持久的通信方式,本文系統(tǒng)介紹了C#環(huán)境下串口通信的核心技術(shù)與實(shí)踐方案,感興趣的小伙伴可以了解下
    2026-05-05
  • c# 開(kāi)機(jī)啟動(dòng)項(xiàng)的小例子

    c# 開(kāi)機(jī)啟動(dòng)項(xiàng)的小例子

    c# 開(kāi)機(jī)啟動(dòng)項(xiàng)的小例子,需要的朋友可以參考一下
    2013-03-03
  • C#中Convert.ToInt32()和int.Parse()的區(qū)別介紹

    C#中Convert.ToInt32()和int.Parse()的區(qū)別介紹

    Convert是一個(gè)類(lèi),繼承自system.Object;int是值類(lèi)型,在本文為大家詳細(xì)介紹下它與int.Parse()的區(qū)別,感興趣的朋友可以參考下
    2013-10-10
  • .NET程序頁(yè)面中,操作并輸入cmd命令的小例子

    .NET程序頁(yè)面中,操作并輸入cmd命令的小例子

    .NET程序頁(yè)面中,操作并輸入cmd命令的小例子,需要的朋友可以參考一下
    2013-03-03
  • C#中如何為枚舉類(lèi)型添加描述方法【小技巧】

    C#中如何為枚舉類(lèi)型添加描述方法【小技巧】

    相信很多人對(duì)枚舉并不陌生,枚舉可以很方便和直觀的管理一組特定值。下面這篇文章主要給大家介紹了關(guān)于C#中如何為枚舉類(lèi)型添加描述方法的相關(guān)資料,需要的朋友可以參考下
    2019-02-02
  • C#多線(xiàn)程之Parallel類(lèi)的用法

    C#多線(xiàn)程之Parallel類(lèi)的用法

    這篇文章介紹了C#多線(xiàn)程之Parallel類(lèi)的用法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • C#定時(shí)器和隨機(jī)數(shù)

    C#定時(shí)器和隨機(jī)數(shù)

    在前一篇中我們介紹了鍵盤(pán)和鼠標(biāo)事件,其實(shí)還有一個(gè)非常常用的事件,就是定時(shí)器事件,如果要對(duì)程序?qū)崿F(xiàn)時(shí)間上的控制,那么就要使用到定時(shí)器。而隨機(jī)數(shù)也是很常用的一個(gè)功能,在我們要想產(chǎn)生一個(gè)隨機(jī)的結(jié)果時(shí)就要使用到隨機(jī)數(shù)。本文我們就來(lái)簡(jiǎn)單介紹一下定時(shí)器和隨機(jī)數(shù)。
    2015-06-06
  • PC藍(lán)牙通信C#代碼實(shí)現(xiàn)

    PC藍(lán)牙通信C#代碼實(shí)現(xiàn)

    這篇文章主要為大家詳細(xì)介紹了PC藍(lán)牙通信C#代碼實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-09-09

最新評(píng)論

普格县| 潮州市| 宝应县| 闽清县| 台北县| 蒙山县| 汉寿县| 册亨县| 宿迁市| 左贡县| 格尔木市| 辽阳县| 岳普湖县| 德兴市| 密云县| 边坝县| 高阳县| 台湾省| 独山县| 静安区| 象山县| 新疆| 金寨县| 台山市| 封丘县| 鄢陵县| 稷山县| 桑植县| 清徐县| 施甸县| 江源县| 松滋市| 襄垣县| 綦江县| 霍城县| 泗水县| 塔河县| 崇仁县| 阿克苏市| 南丰县| 温宿县|