System.Configuration名前空間のキークラス

オリジナルリンク: http://www.cnblogs.com/ycat/archive/2006/08/19/481083.html

1.ConfigurationManagerとWebConfigurationManagerカテゴリ:
 
    のConfigurationManagerクラスを使用するには、コンピュータの設定情報やアプリケーションにアクセスすることができます。ConfigurationManagerは、クライアントアプリケーションの構成ファイルを処理するための好ましい方法である。他の方法を使用することはお勧めしません。Webアプリケーションの場合、WebConfigurationManagerクラスを使用することをお勧めします。
クライアントコンピュータ上で実行するクライアントアプリケーション、およびWebアプリケーションのクライアントを実行するサーバコンピュータに接続します。
ビルトインSystem.Configuration型を使用するか、コンフィギュレーション情報を処理するためにそれらに由来します。これらのタイプを使用することにより、構成情報が直接、コンフィギュレーション・ファイルを処理することができ、カスタム情報を含むように拡張することができます。

ConfigurationManagerクラスには、次のタスクを実行するために使用される部材を含みます。

      設定ファイルからセクションをお読みください。コンフィギュレーション情報にアクセスするには、GetSectionを使用しています。これらのいくつかのために、のappSettingsセクションとのconnectionStringsのように、のAppSettingsとのconnectionStringsクラスを使用してください。上記読み出し専用操作の方法は、単一のキャッシュ・インスタンスの構成、及び複数のスレッドを識別することができます。

      全体としての構成ファイルは、読み込みと書き込み。アプリケーションは、それが自分自身や他のアプリケーションまたはコンピュータが、また、それがローカルかリモートかであるかどうか、任意のレベルで構成設定を読み書きすることができます。一つの方法は、同様のMyapp.exe.configにこのプロファイルを提供開閉式のConfigurationManagerクラスを使用しています。これらの方法は、次に、プロセスのプロファイルに関連付けられた開示されたメソッドおよびプロパティで使用することができる構成オブジェクトを返します。読み取りまたは書き込み動作を実行する方法、およびファイルがコンフィギュレーションデータを再作成するために書き込まれるたび。

      サポートの設定作業。次のタイプは、さまざまな設定タスクをサポートするために使用されています。

するSectionInformation
PropertyInformation
PropertyInformationCollection
するElementInformation
コンテキスト情報
ConfigurationSectionGroup
ConfigurationSectionGroupCollection

従来の処理設定情報に加えて、も作成することができ、カスタム構成要素によって構成内蔵タイプを拡張処理(例えばのConfigurationElement、をConfigurationElementCollection、ConfigurationPropertyのConfigurationSectionなど)。プログラムで組み込みの構成のタイプの例を拡張する方法については、のConfigurationSectionを参照してください。モデルの拡張属性の種類に基づいて、内蔵のコンフィギュレーションを使用する方法の例としては、あるConfigurationElementを参照してください。

Configurationクラスは、プログラムによるアクセスは、設定ファイルを編集することができます。オープンは、提供のConfigurationManagerの方法を使用しています。これらの方法は、次に、ベースプロファイルの必要な処理メソッドとプロパティを提供する構成オブジェクトを返します。あなたは、読み取りや書き込みのためこれらのファイルにアクセスすることができます。コンフィギュレーション・ファイルを読み取るには、GetSectionまたはGetSectionGroupは、構成情報をお読みください。ユーザーまたはプロセスが次の権利を持っている必要があります読む:アプリケーションが独自の設定への読み取り専用アクセスを必要とする場合は、GetSectionメソッドをお勧めします。この方法は、アプリケーションのキャッシュ構成の現在の値へのアクセスを提供し、その性能は、Configurationクラスよりも優れています。

2.Configurationカテゴリ:

(コンピュータなどの)特定の物理エンティティまたは論理エンティティ(例えば、アプリケーションまたはWebサイト)のために、これらの構成設定で表される表示設定クラスのインスタンスの設定をマージします。指定された論理エンティティは、ローカルコンピューターまたはリモートサーバー上に存在することができます。プロファイルは、エンティティを指定されていない場合、デフォルトの構成設定の構成オブジェクトは、Machine.config文書定義を表します。そのクラスを開き設定に定義された方法のいずれかを使用することによって、あなたはConfigurationオブジェクトを取得することができます。あなたはディスクファイルに設定情報Coonfigurationオブジェクトを保存することができ、保存方法のいずれかを使用し

3のConfigurationSectionクラス

    カスタムセクションの種類を実装するのConfigurationSectionを使用することができます。ConfigurationSectionは、カスタム設定のプログラミングセクションにカスタム処理とのアクセスを提供するために、クラスを拡張しました。クラスを表す拡張クラスによってデフォルトの構成セクションのConfigurationSectionのすべて。

ConfigSectionsは処理のそのタイプに登録された項目を使用します。

      3.1 ConfigurationSection实现说明:
      可以使用编程或声明性(属性化)代码编写模型创建自定义配置节。

              3.1.1 编程模型。此模型要求为每个节属性 (Attribute) 创建一个用于获取和/或设置其值的属性 (Property),并将其添加 到基础 ConfigurationElement 基类的内部属性 (Property) 包中。

              3.1.2 声明性模型。这种比较简单的模型也称为属性 (Attribute) 化模型,允许您通过使用属性 (Property) 来定义节属性 (Attribute),并使用属性 (Attribute) 对其进行修饰。这些属性 (Attribute) 将属性 (Property) 类型及其默认值通知给配置系统。配置系统将使用通过反射获取的这些信息为您创建节属性 (Property) 对象并执行所需的初始化。

   3.2 Configuration 是允许进行编程访问以编辑配置文件的类。您可以按照以下说明访问这些文件以进行读写操作。
             3.2.1 读取。使用 GetSection 或 GetSectionGroup 读取配置信息。请注意,进行读取操作的用户或进程必须具有以下权限:
      在当前配置层次结构级别下对配置文件的读取权限。
      对所有父级配置文件进行读取的权限。

      如果应用程序需要对其自己的配置进行只读访问,建议对于 Web 应用程序使用 GetSection 重载方法。或使用 GetSection 方法(针对客户端应用程序)。 这些方法可提供对当前应用程序的缓存配置值的访问,且其性能要好于 Configuration 类。
      如果使用带有路径参数的静态 GetSection 方法,则该路径参数必须引用代码正在运行的应用程序,否则,该参数将被忽略,并返回当前正在运行的应用程序的配置信息。
             3.2.2 写入。可使用 Save 方法之一写入配置信息。请注意,进行写入操作的用户或进程必须具有以下权限:
      对当前配置层次结构级别的配置文件和目录的写入权限。
      对所有配置文件的读取权限。

转载于:https://www.cnblogs.com/ycat/archive/2006/08/19/481083.html

おすすめ

転載: blog.csdn.net/weixin_30312659/article/details/94798925