ホームページ >バックエンド開発 >C++ >.NET クラス ライブラリの app.config または web.config から構成設定を読み取る方法は?

.NET クラス ライブラリの app.config または web.config から構成設定を読み取る方法は?

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-19 19:06:09362ブラウズ

How to Read Configuration Settings from app.config or web.config in a .NET Class Library?

.NET クラス ライブラリの構成設定へのアクセス

このガイドでは、.NET クラス ライブラリ内の app.config または web.config から構成設定を取得する方法について説明します。 廃止された ConfigurationSettings.AppSettings.Get() メソッドの使用は避けてください。

推奨されるアプローチ (注意事項あり):

ConfigurationManager.AppSettings["MySetting"] は一般的に推奨されますが、追加の手順を行わないとクラス ライブラリ プロジェクトから直接アクセスすることはできません。

解決策:

クラス ライブラリの構成設定にアクセスするには、次の手順に従います。

  1. 参照の追加: クラス ライブラリ プロジェクトの System.Configuration への参照を追加します。

  2. カスタム セクション ハンドラーの作成: ConfigurationSectionHandler を継承し、その Create メソッドをオーバーライドするクラスを作成します。このカスタム ハンドラーを使用すると、構成セクションにアクセスできるようになります。

  3. カスタム セクションの登録: <configSections> または app.config ファイルの web.config 要素内にカスタム セクションを登録します。

例:

「MySettings」という名前のセクションを読みたいとします。

カスタム セクション ハンドラー (例: MySettingsHandler.cs):

<code class="language-csharp">using System.Configuration;

public class MySettingsHandler : ConfigurationSectionHandler
{
    public override object Create(object parent, object configContext, System.Xml.XmlNode section)
    {
        var settings = new MySettingsSection();
        //  Populate settings from the XML node (section) here, based on your config structure.  Example below assumes a single string setting.
        settings.MySetting = section.Attributes["mysetting"]?.Value;
        return settings;
    }
}

//  Define a class to hold your settings
public class MySettingsSection
{
    public string MySetting { get; set; }
}</code>

設定ファイル (app.config または web.config):

<code class="language-xml"><configuration>
  <configSections>
    <section name="mySettings" type="MySettingsHandler, YourAssemblyName" />
  </configSections>
  <mySettings mysetting="YourSettingValue" />
</configuration></code>

"YourAssemblyName" をクラス ライブラリ アセンブリの実際の名前に置き換えます。

クラス ライブラリの設定へのアクセス:

<code class="language-csharp">var settings = (MySettingsSection)ConfigurationManager.GetSection("mySettings");
string mySettingValue = settings.MySetting;</code>

このアプローチにより、.NET クラス ライブラリから構成設定に安全かつ正しくアクセスできるようになります。 特定の構成構造に一致するようにカスタム セクション ハンドラーと構成ファイルを必ず調整してください。

以上が.NET クラス ライブラリの app.config または web.config から構成設定を読み取る方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。