System.Configuration 네임 스페이스의 핵심 클래스

원본 링크 : http://www.cnblogs.com/ycat/archive/2006/08/19/481083.html

1.ConfigurationManager 및 WebConfigurationManager 카테고리 :
 
    의 ConfigurationManager 클래스를 사용하여, 컴퓨터의 구성 정보 및 응용 프로그램에 액세스 할 수 있습니다. ConfigurationManager가 클라이언트 응용 프로그램 구성 파일을 처리하기위한 선호하는 방법이며, 다른 방법을 사용하지 않는 것이 좋습니다. 웹 응용 프로그램의 경우, WebConfigurationManager 클래스를 사용하는 것이 좋습니다.
클라이언트 응용 프로그램은 클라이언트 컴퓨터에서 실행하고, 웹 응용 프로그램 클라이언트가 서버 컴퓨터에 연결하여 실행합니다.
내장 System.Configuration 유형을 사용하거나 구성 정보를 처리하도록에서 유래. 이러한 유형을 사용하여 설정 정보를 직접 구성 파일을 처리 할 수 있고, 사용자의 정보를 포함하도록 확장 될 수있다.

의 ConfigurationManager 클래스는 다음과 같은 작업을 수행하는 데 사용 구성원이 포함되어 있습니다.

      구성 파일에서 섹션을 읽어보십시오. 구성 정보에 액세스하려면 GetSection를 사용합니다. 이들 중 일부, appSettings는 섹션과 connectionStrings처럼 appSettings는과 ConnectionStrings 클래스를 사용하십시오. 다음은 상기 읽기 전용 작업 방법, 하나의 캐시 인스턴스 구성 및 다중 스레드를 식별 할 수 있습니다.

      구성 파일 전체를 읽기 및 쓰기로. 응용 프로그램은 자신 또는 다른 응용 프로그램이나 컴퓨터, 그러나 또한 로컬 또는 원격인지 여부, 모든 수준에서 구성 설정을 읽고 쓸 수 있습니다. 하나의 방법은 개방의 ConfigurationManager 클래스 프로파일이 유사 Myapp.exe.config 제공 이용한다. 이 방법은 결과적으로 공정의 정보와 연관된 개시된 방법 및 속성에서 사용될 수있는 구성 객체를 리턴한다. 판독 또는 기록 동작을 수행하는 방법에있어서, 각각의 시간은 파일의 구성 데이터를 다시 기록된다.

      지원 구성 작업. 다음과 같은 유형의 다양한 구성 작업을 지원하는 데 사용됩니다 :

SectionInformation 사용자
PropertyInformation
PropertyInformationCollection
ElementInformation
ContextInformation
ConfigurationSectionGroup
ConfigurationSectionGroupCollection

종래의 처리 구성 정보에 더하여, 또한 생성 할 수 있고, 사용자 정의 구성 요소에 의해 구성의 기본 타입을 확장 처리 (예컨대있는 ConfigurationElement, ConfigurationElementCollection을,있는 ConfigurationProperty없는 ConfigurationSection 등). 프로그램 기본 구성 유형의 예제를 확장하는 방법에 대한 자세한 내용은없는 ConfigurationSection을 참조하십시오. 모델 확장 속성의 유형에 따라 기본 구성을 사용하는 방법의 예는,있는 ConfigurationElement를 참조하십시오.

구성 클래스는 구성 파일을 편집 할 수있는 프로그래밍 방식으로 액세스 할 수 있습니다. 오픈 ConfigurationManager가 제공하는 방법을 사용한다. 이러한 방법은 다시 기본 프로파일의 필요한 처리 방법 및 특성을 제공하는 구성 객체를 리턴한다. 당신은 읽거나 쓰기 위해 이러한 파일에 액세스 할 수 있습니다. 구성 파일을 읽으려면 GetSection 또는 GetSectionGroup 구성 정보를 읽을 사용합니다. 사용자를 읽거나 프로세스는 다음과 같은 권한이 있어야합니다 : 응용 프로그램이 자체 구성에 대한 읽기 전용 액세스를 필요로하는 경우, GetSection이 방법을 권장합니다. 이 방법은 응용 프로그램의 캐시 구성의 현재 값에 대한 액세스를 제공, 성능은 구성 클래스보다 낫다.

2.Configuration 카테고리 :

보기 구성 클래스의 인스턴스 구성 (컴퓨터 등) 특정 물리적 엔티티에 대한 이러한 구성 설정으로 표시 설정 또는 논리 엔티티 (예를 들어, 응용 프로그램 또는 웹 사이트)를 병합합니다. 지정된 논리적 개체가 로컬 컴퓨터 나 원격 서버에 존재할 수 있습니다. 프로필 엔티티를 지정하지 않으면 기본 구성 설정 구성 객체의 Machine.config 문서 정의를 나타냅니다. 당신이 구성 개체를 얻을 수있는 클래스를 열고 구성에 대해 정의 된 방법 중 하나를 사용하여. 저장 방법 중 하나를 사용하여, 당신은 디스크 파일에 구성 정보 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