2012-07-27 3 views
0

저는 최근에 소프트웨어를 사용 해왔고 연관 배열을 저장하는 것이 가장 좋은 방법인지 궁금해했습니다. 나는 갑자기 밖으로 가지고 올 수app.config에 연관 배열을 저장하는 가장 좋은 방법

있는 유일한 방법은 다음과 같이 할 수 있습니다 :

<add key="disks" value="C|1|10,D|2|20,E|1|5,Z|1|3"/> 

을하지만 내 config 파일에서 가독성을 많이 제공하지 않습니다 그리고 내 config 파일을 원하는 콘솔 응용 프로그램이므로 읽을 수 있어야합니다.

app.config 파일에 지정된 디스크의 디스크 공간을 검사하지만 다른 디스크에 다른 임계 값을 지정하는 프로그램을 작성했기 때문에 그 이유가 여기에 있습니다.

어떻게 해결하겠습니까? 다음은 현재 구성 파일의 일부입니다.

<!-- DISK FEATURE SETTINGS --> 
    <!-- Type 1 is threshold by percentage and type 2 is threshold by a certain limit --> 
    <add key="threshold_type" value="1" /> 
    <add key="threshold_limit" value="0,1" /> 
    <!-- Space_type defines if you want to limit using kilobytes (1), megabytes (2) or gigabytes (3) if using threshold_type 2 --> 
    <add key="space_type" value="3" /> 
    <!-- Put the disks here delimited by a comma like this: C,D,E --> 
    <add key="disks" value="C,D,E,Z"/> 
<!-- SERVICE FEATURE SETTINGS --> 
    <!-- Put the services here delimited by a comma like this: C,D,E --> 
    <add key="services" value="spooler,ekrn,RadeonPro Support Service,TeamViewer6"/> 
    <!-- Put this on 1 if you want to log your output to a text file --> 
    <add key="logging" value="1"/> 

나는 몇 가지 데이터를 얻을 텍스트 파일로 저장하기 위해 성능 모니터 카운터를 사용하여 내 performancecounter 프로그램에 대해 동일한 원리를 사용하고 싶습니다.

나는 사람들이 여기에 조금 :) 나를 도울 수 있기를 바랍니다

답변

4

고유 한 구성 섹션을 만들 수 있습니다. 사용자 지정 구성을 사용하면 가독성과 유형 안전성이 향상됩니다. 다음은 맞춤 구성을 만들 수있는 링크입니다. http://msdn.microsoft.com/en-us/library/2tw134k3.aspxhttp://haacked.com/archive/2007/03/11/custom-configuration-sections-in-3-easy-steps.aspx (이전은 쉽게 따라 할 수 있음).

+0

나는 내가 원하는 것을 얻기 위해 좀 더 검색을해야했지만이 솔루션을 따라 갔다. 제안 주셔서 감사합니다 :) – Jeffro

1

지금까지 표준 구성 메커니즘은 XML 직렬화, 최고의 (그리고, IMHO, 현명한)의 App.config가에 사전을 저장하는 방식으로 작동하기 때문에 a List<KeyValuePair<K,V>>.