エクスポート (0) 印刷
すべて展開

WebConfigurationManager クラス

Web アプリケーションに適用される構成ファイルにアクセスできるようにします。

名前空間: System.Web.Configuration
アセンブリ: System.Web (system.web.dll 内)

public static class WebConfigurationManager
public final class WebConfigurationManager
public final class WebConfigurationManager
適用できません。

WebConfigurationManager クラスを使用すると、コンピュータおよびアプリケーションの情報にアクセスできます。

Web アプリケーション関連の構成ファイルを処理する場合は、WebConfigurationManager の使用をお勧めします。クライアント アプリケーションの場合は、ConfigurationManager クラスを使用します。

次に説明するように、作成したアプリケーションで System.Configuration 型を拡張したり、それを直接使用して構成情報を処理したりできます。

  • Handling configuration。標準型を使用して構成情報を処理するには、次のいずれかの方法を使用します。

    • Accessing a section。アプリケーションの構成情報にアクセスするには、WebConfigurationManager に用意された GetSection メソッドのいずれかを使用する必要があります。<appSettings> および <connectionStrings> の場合は、AppSettings プロパティと ConnectionStrings プロパティを使用します。これらのメソッドは、読み取り専用の操作を実行し、構成のキャッシュされた 1 つのインスタンスを使用し、マルチスレッド対応です。

    • Accessing configuration files。アプリケーションは、そのアプリケーション自体または他のアプリケーションやコンピュータのあらゆるレベルで、ローカルまたはリモートから構成設定の読み取りと書き込みを行うことができます。WebConfigurationManager によって提供された open メソッドの 1 つを使用します。これらのメソッドは、Configuration オブジェクトを返します。このオブジェクトにより、基になる構成ファイルを処理するために必要なメソッドとプロパティが提供されます。これらのメソッドは、読み取り操作または書き込み操作を実行し、ファイルが開かれるたびに構成データを再作成します。

    • Advanced configuration。より詳細な構成処理は、SectionInformationPropertyInformationPropertyInformationCollectionElementInformationContextInformationConfigurationSectionGroup、および ConfigurationSectionGroupCollection の各型によって提供されます。

  • Extending configuration standard typesConfigurationElementConfigurationElementCollectionConfigurationProperty、および ConfigurationSection などの標準の構成の種類をプログラムや属性モデルを使用して拡張することで、カスタム構成要素を提供することもできます。プログラムによって標準の構成型を拡張する方法の例については、ConfigurationSection クラスのトピックを参照してください。属性付きモデルを使用して標準の構成型を拡張する方法の例については、ConfigurationElement クラスのトピックを参照してください。

実装元へのメモ : Configuration クラスは、構成ファイルの編集をプログラムから行うことができるようにします。WebConfigurationManager に用意されているオープン メソッドの 1 つを使用します。これらのメソッドは、Configuration オブジェクトを返します。このオブジェクトにより、基になる構成ファイルを処理するために必要なメソッドとプロパティが提供されます。次に示す方法で、これらのファイルへの読み取りアクセスまたは書き込みアクセスができます。 構成情報を読み取るには、GetSection または GetSectionGroup を使用します。読み取りを行うユーザーまたはプロセスに、次のアクセス許可が必要です。

  • 現在の構成階層レベルの構成ファイルに対する読み取りアクセス許可。

  • すべての親構成ファイルに対する読み取りアクセス許可。

アプリケーションが独自の構成に対する読み取り専用アクセスを行う必要がある場合は、GetSection メソッドを使用することをお勧めします。これらのメソッドにより、現在のアプリケーションのキャッシュされた構成値にアクセスできます。こちらの方が、Configuration クラスよりもパフォーマンスが優れています。
メモメモ :

path パラメータを受け取る GetSection 静的メソッドを使用する場合、path パラメータは、コードを実行しているアプリケーションを参照している必要があります。そうしないと、パラメータが無視され、現在実行中のアプリケーションの構成情報が返されます。

構成情報を書き込むには、Save メソッドの 1 つを使用します。書き込みを行うユーザーまたはプロセスに、次のアクセス許可が必要です。
  • 現在の構成階層レベルの構成ファイルおよびディレクトリに対する書き込みアクセス許可。

  • すべての構成ファイルに対する読み取りアクセス許可。

トピック場所
方法 : プログラムによって ASP.NET 構成設定にアクセスするASP .NET Web アプリケーションの構成
方法 : 継承された構成設定とローカルな構成設定をプログラムから表示するASP .NET Web アプリケーションの構成
方法 : ASP.NET 構成設定をロックするASP .NET Web アプリケーションの構成
方法 : プログラムによって ASP.NET 構成設定にアクセスするVisual Studio ASP .NET での Web アプリケーションの作成
方法 : ASP.NET 構成設定をロックするVisual Studio ASP .NET での Web アプリケーションの作成
方法 : 継承された構成設定とローカルな構成設定をプログラムから表示するVisual Studio ASP .NET での Web アプリケーションの作成

WebConfigurationManager メソッドを使用して構成情報にアクセスする方法を次の例に示します。


// Show the use of GetSection(string). 
// It gets the connectiobStrings section.
// If called from within a client application,
// the GetSection(string) gets the default connectionStrings
// section from the machine.config.
// If called from within a Web aplication it gets the
// section from the configuration file located at the 
// application current level. 
static void GetSection1()
{

    // Get the connectionStrings section.
    ConnectionStringsSection connectionStringsSection =
        WebConfigurationManager.GetSection("connectionStrings")
        as ConnectionStringsSection;

    // Get the connectionStrings key,value pairs collection.
    ConnectionStringSettingsCollection connectionStrings =
        connectionStringsSection.ConnectionStrings;
   
    // Get the collection enumerator.
    IEnumerator connectionStringsEnum =
        connectionStrings.GetEnumerator();

    // Loop through the collection and 
    // display the connectionStrings key, value pairs.
    int i = 0;
    Console.WriteLine("[Display the connectionStrings]");
    while (connectionStringsEnum.MoveNext())
    {
        string name = connectionStrings[i].Name;
        Console.WriteLine("Name: {0} Value: {1}",
        name, connectionStrings[name]);
        i += 1;
    }

    Console.WriteLine();
}


System.Object
  System.Web.Configuration.WebConfigurationManager

この型の public static (Visual Basicでは共有) メンバはすべて,スレッド セーフです。インスタンス メンバの場合は,スレッド セーフであるとは限りません。

Windows 98,Windows Server 2000 SP4,Windows CE,Windows Millennium Edition,Windows Mobile for Pocket PC,Windows Mobile for Smartphone,Windows Server 2003,Windows XP Media Center Edition,Windows XP Professional x64 Edition,Windows XP SP2,Windows XP Starter Edition

Microsoft .NET Framework 3.0 は Windows Vista,Microsoft Windows XP SP2,および Windows Server 2003 SP1 でサポートされています。

.NET Framework

サポート対象 : 3.0,2.0

コミュニティの追加

追加
表示:
© 2014 Microsoft