2012-01-06 1 views
1

.NET 구성에서는 자체 구성 섹션을 작성하고이를 XML로 구조화하는 방법에 대해 많은 자유를 누릴 수 있습니다. 대부분의 경우에 우리가 할 그래서 그런 다음구성 섹션을 프로그래밍 방식으로 구할 수 있습니다. 이름을 모르더라도

<?xml version="1.0"?> 
<configuration> 
    <configSections> 
     <section name="MySection" type="MySectionType, MySectionAssembly" ... /> 
    </configSections> 

    <MySection> 
     ... 
    </MySection> 
</configuration> 

을 코드에서 우리의 섹션에 액세스하기 위해, 우리는 다음을 수행

MySection mySection = (MySection) ConfigurationManager.GetSection("MySection"); 

위의 예제는 난을 가지고 본 적이있는 유일한 방법입니다 코드에서 얻은 커스텀 섹션.

MySection 클래스와 그 안에있는 구조의 클래스를 정의하는 라이브러리 또는 프레임 워크가 있다고 가정 해 보겠습니다. 우리는 애플리케이션에 구성 파일을 정의 할 타사 개발자에게 이러한 클래스와 구조를 제공하려고합니다. 동시에, 우리의 프레임 워크는 적절하게 기능하기 위해서 프로그램 적으로 그 섹션을 얻을 필요가 있습니다.

우리 프레임 워크의 최종 사용자는 분명히 MySection이라는 다른 이름으로 자유롭게 사용할 수 있습니다. 따라서 위의 코드는 섹션을로드하지 못합니다. 이 문제를 극복 할 수있는 좋은 방법이 있습니까? 도서관의 소비자들이 우리가 원하는 방식으로 만 자신의 섹션에 이름을 붙이도록 강요하기로 결정한 것은 내가하고 싶지 않은 것입니다.

편집 :

<?xml version="1.0"?> 
<configuration> 
    <configSections> 
     <sectionGroup name="MyGroup"> 
      <section name="MySection" type="MySectionType, MySectionAssembly" ... /> 
     </sectionGroup> 
    </configSections> 

    <MyGroup> 
     <MySection> 
      ... 
     </MySection> 
    </MyGroup> 
</configuration> 

이 너무이 상황을 처리 할 수 ​​있을까요 : 시나리오에 추가 합병증이 섹션 그룹의 섹션을두고있다?

미리 감사드립니다.

답변