2009-07-20 5 views
0


Это единственная причина использования пользовательских типов разделов (полученных из ConfigurationSection)?

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

BTW - это не «пользовательский раздел типа vs appSettings« вопрос. Я уже понимаю, преимущество использования пользовательских типов секций над AppSettings элемента


А) Насколько я знаю, мы должны реализовать пользовательский раздел (или AppSettings элемента) всякий раз, когда мы хотели бы жесткий код конкретной информации (эта информация может в редких случаях меняться). Без использования типа пользовательского раздела нам пришлось бы жестко закодировать эту информацию в код, но это будет означать, что всякий раз, когда информация меняется, нам придется перекомпилировать код.

Это единственная причина использования пользовательских типов разделов (или приложений) или есть другие причины?


B) Есть ли situationatio где, вместо создания пользовательского типа раздела, было бы лучше, чтобы сохранить определенную часть информации (которая вряд ли когда-либо изменений) в БД или код?


Thanx

ответ

2

Одним из главных преимуществ использования пользовательских разделов конфигурации, которые вы еще не упомянутых является безопасность типов.

В вашем собственном разделе пользовательской конфигурации, вы можете указать типданных для настройки - INT, строка, DateTime, перечислений - в то время как если у вас есть все, что в <appSettings><add key="blabla" value="something" /></appSettings>, вы в основном всегда просто дело со строками.

Для меня это довольно большая и важная плюс сторона, которая делает использование пользовательских конфигурационных разделов весьма привлекательным.

Marc

+0

Вы говорите о зачем мы предпочитаем использовать пользовательский раздел над AppSettings, но я больше заинтересован в том, когда мы должны использовать пользовательский раздел, и когда мы должны найти какие-то другие средства для хранения информации (храня его в БД или в коде или ...) – SourceC

+1

ОК, ну, я полагаю, основная идея .NET заключается в том, чтобы обычно использовать файлы конфигурации на основе XML по всему остальному, и если вы это сделаете, вы лучше всего создавая для этого свои собственные разделы. В то же время я также в настоящее время использую гибридный .NET config file/config в подходе таблицы базы данных по разным причинам. –

+1

Я думаю, что наиболее убедительным аргументом для конфигурационных файлов .NET является то, что это «официально утвержденный» способ делать вещи, и все в пространстве .NET должны быть знакомы и не испытывают никаких проблем с пониманием того, что происходит. «Делайте, как делают римляне». –