2014-06-20 3 views
3

나는 한 번 클릭하여 배포되는 Windows 응용 프로그램을 가지고 있습니다. 내 app.config 내의 내 appsettings 몇 가지 설정이 있습니다. 일부 설정은 파일 다운로드 등을위한 웹 서버 소스와 같이 배치에 따라 다릅니다. 배포 지역에 따라 다를 수 있습니다. 일부 설정 항목은 배포 중에 변경되지 않는 앱에 따라 다릅니다.app.config의 appsettings 섹션을 두 부분으로 나눕니다.

<appSettings >  
    <add key="key1" value="Value111 changable with region" /> 
    <add key="Key2" value="Value222 changable with region" /> 

    <add key="key3" value="Value333 NOT changable with region" /> 
    <add key="Key4" value="Value444 NOT changable with region" /> 

</appSettings > 

이제 두 개의 app.config 파일에서 appsettings를 분할해야합니다. key1과 key2를 별도의 설정 파일에 넣으려고합니다. 어떻게해야합니까?

+0

당신은 변화가 무엇을 의미합니까? 어떻게 변할 것인가? – Plutonix

+0

그리고 언제/어떻게 스위치를 만드시겠습니까? –

+0

추가 구성으로 손을 대는 것은 쉽지 않습니다. 동일한 파일에서 Region1Key1과 Region2Key1을 사용하고 독서를위한 약간의 도우미 방법으로 트릭을 수행 할 수 있습니다. –

답변

11

appSettings file attribute을 사용하고 각 배포 영역에 파일 버전을 지정하십시오.

의 app.config :

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <appSettings file="regionsettings.config"> 
     <add key="key1" value="default value" /> 
     <add key="commonKey" value="common value" /> 
    </appSettings> 
</configuration> 

regionsettings.config (영역 1)

<?xml version="1.0" encoding="utf-8" ?> 
<appSettings> 
    <add key="key1" value="region 1" /> 
</appSettings> 

regionsettings.config (영역 2)

,451,515,
<?xml version="1.0" encoding="utf-8" ?> 
<appSettings> 
    <add key="key1" value="region 2" /> 
</appSettings> 

또는 헹크 좋아한다 제안 :

<add key="region1.key1" value="region1key1 value" /> 
<add key="region2.key1" value="region2key1 value" /> 
+0

나는이 appraoch를 시도했다. 하지만 내 key1은 새 값으로 다시 작성되지 않습니다. – Abbi

+0

무엇이 잘못 되었나요? 동일한 디렉토리에있는 파일입니까? 구성 파일이 올바른 형식입니까? – Jasen

+0

region settings.config에 노드가 없습니다. – Abbi

관련 문제