2011-09-21 5 views
0

나는 설정 파일을 interactiong에 많은 경험이 없어 내가 있다고 지적 MSDN에서 GetSection() 메소드를 읽고 있었다 :"구성 유형"이란 무엇입니까?

**Notes to Implementers**: 

    You must cast the return value to the expected configuration type. 
To avoid possible casting exceptions, you should use a conditional 
casting operation such as... 

는 "구성 유형"이 노트에 무엇을 의미 하는가를? 선택한 섹션이 항상 XML 노드를 나타내지 않습니까?

답변

1

구성 유형은 기본적으로 당신이의 app.config Web.config 또는

에 저장할 구성 값을 나타 내기 위해 정의하는 사용자 정의 클래스의 단지 유형입니다 귀하의 사용자 정의 설정 섹션 때 System.Configuration.ConfigurationSection 및 상속 할 필요가

당신은 내가 특별한 클래스가 있다면 당신은 here

더 예는 것입니다 당신이 System.Configuration.ConfigurationSection

볼의 오프 상속 사용자 정의 클래스의 유형으로 반환 값을 캐스팅 할 필요는 GetSection 방법을 사용

public class MyConfig : ConfigurationSection 
{ 
    [ConfigurationProperty("myConfigProp", DefaultValue = "false", IsRequired = false)] 
    public Boolean MyConfigProp 
    { 
     get 
     { 
      return (Boolean)this["myConfigProp"]; 
     } 
     set 
     { 
      this["myConfigProp"] = value; 
     } 
    } 
} 

나는 내 코드에서 다음을 수행 할 해당 속성에 액세스 할 것이다 때마다 :

//create a MyConfig object from the XML in my App.Config file 
MyConfig config = (MyConfig)System.Configuration.ConfigurationManager.GetSection("myConfig"); 

//access the MyConfigProp property 
bool test = config.MyConfigProp; 
을 나는의 app.config Web.config 또는 같은 중 하나에 저장하고 싶었 속성을 나타냅니다
+0

위대한 설명! 감사! – pencilCake

1

여기 MSDN에서 탁월한 샘플을있다 : 여기 http://msdn.microsoft.com/en-us/library/2tw134k3.aspx

의 "구성 유형은"ConfigurationSection을 확장하기 위해 만들어진 것 사용자 정의 유형입니다. 예, 이것은 XML 노드로 구현되지만 System.Configuration 네임 스페이스의 목적은이를 추상화하는 것입니다.