Вопрос

Я работаю над своим программным обеспечением в последнее время, и мне было интересно, какой лучший способ хранить ассоциативный массив.

Единственное, что я мог бы придумать с синего, это сделать что-то вроде этого:

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

Но это не предлагает много читаемости в моем файле конфигурации, и я хочу, чтобы мой файл конфигурации быть читабельным, так как это приложение консоли.

Причина этого, потому что я написал программу, которая проверяет диск пространства дисков, указанных в файле 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"/>
.

Я хочу использовать тот же принцип для моей программы Performancounter, которая использует счетчики перфоусов, чтобы получить некоторые данные и хранить его в текстовом файле.

Я надеюсь, что люди могут помочь мне немного здесь :)

Это было полезно?

Решение

Я предлагаю вам создать свой собственный раздел конфигурации.Пользовательская настройка дает более читаемость и безопасность типа.Вот ссылки для создания пользовательской настройки http://msdn.microsoft.com/en-us/library/2tw134k3.aspx и http://haacked.com/Archive/2007/03/11/custom-configuration-sections-in-3-easy-steps.aspx (старый, но легко следовать).

Другие советы

До стандартного механизма конфигурации работает с сериализацией XML, лучшим (и, ИМХО, мудрым) способом хранения словарей в App.config - это генеракодицетагкод.

Вы можете использовать hashtable из system.collection или list <>

ниже мало указателей для hashtable, http://www.dotnetperls.com/hashtable http://www.tutorialspoint.com/csharp/csharp_hashtable.htm

Я надеюсь, что это поможет !!Спасибо :)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top