2012-12-17 3 views
0

MyApp.exe.config 파일을 XML로 별도의 위치에 복사합니다.함수 호출에서 매개 변수로 XML 데이터 전달

ConfigurationManager.<section>을 사용하여 app.config을 수정하는 대신이 사용자 지정 구성 파일을 사용하여 응용 프로그램이 실행 중일 때 일부 설정에 액세스하고 변경합니다.

문제는 기본 app.config 파일이 사용자 컴퓨터의 나중 단계에서 업데이트되어 이러한 변경 사항을 내 사용자 지정 구성 파일로 다시 전파하려는 것입니다.

가장 좋은 방법은 무엇입니까?

<configSections> 
    <section name="" type="" /> 
</configSections> 

<appSettings> 
    <add key="" value="" /> 
</appSettings> 

<ConnectionManangerProviders> 
    <provider name="" enabled="" type=""> 
     <pollingInterval></pollingInterval> 
    </provider> 
</ConnectionManagerProviders> 

<QueueManagerProviders> 
    <provider name="" enabled="" type="unique" encrypted="" signed="" cryptoProvider="" /> 
    <provider name="" enabled="" type="unique" encrypted="" signed="" cryptoProvider=""> 
     <queueName></queueName> 
    </provider> 
    <provider name="" enabled="" type="unique" encrypted="" signed="" cryptoProvider=""> 
     <applicationName></applicationName> 
     <connectionString></connectionString> 
    </provider> 
</QueueManagerProviders> 

예를 들어, 구성 파일의 모양입니다. <QueueManagerProviders> 아래의 요소 값 중 하나가 app.config에서 수정되었다고 가정하면이 파일의 데이터를 메소드에 전달하여 메소드가이를 효과적으로 파싱하고 사용자 정의 구성 파일의 해당 섹션을 업데이트 할 수있게합니다. 내가 만든거야?

+0

이 설정 파일을 런타임에 읽으려는 경우 (변경된 경우)? – Andrei

+0

예. 서비스 중 하나가 서버의 구성 파일에 대한 업데이트를 푸시합니다. 내 사용자 지정 구성 파일에서 이러한 업데이트 된 설정을 너무 얻고 싶습니다. –

+0

System.Xml을 보셨습니까? 적어도 XmlDocument를 사용하고자하는 것처럼 보입니다. –

답변

0

이것은 나쁜 디자인에 대해 뭔가 비명을 질렀는데, 전체 기능을 구현하는 데 더 좋은 방법이있을 것입니다. 그러나 "서비스"부분을 통제하지 못하면 붙어 있습니다.

이 필요합니다. "파일 시스템 변경 알림을 듣고 디렉토리 또는 디렉토리의 파일 , 변화. "

이벤트 처리기를 추가하고 파일이 변경되면 전체 파일을 다시 읽고 구문 분석하십시오.

+0

나는 이해합니다. 하지만 내 문제는 변경 이벤트를 감지하는 것이 아니라 XML의 데이터를 적절한 데이터 구조 (?)로 모아서 사용자 지정 구성 파일을 업데이트하는 메서드에 전달하는 것입니다. 전체 파일 (사용자 정의 구성)을 덮어 쓰지 않고 app.config의 변경 사항을 반영합니다. –

관련 문제