Пользовательская конфигурация для приложений ASP.NET (использование настроек приложения или других платформ) - PullRequest
0 голосов
/ 22 апреля 2009

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

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

В Windows Forms недавно появилась функция под названием Настройки приложения . Это дает вам редактор настроек и создает некоторый код, который детализирует сериализацию типов в конфигурационные файлы и из них. Настройки приложения, кажется, избавляют от боли при работе с пользовательской конфигурацией, но мне не особо нравится формат создаваемых разделов конфигурации, и я не собираюсь сохранять свою конфигурацию обратно.

Итак, мои вопросы:

  1. Уместно ли использовать механизм параметров приложения на сайте ASP.NET? Буду ли я обнаруживать проблемы перфорирования / многопоточности с этим механизмом в таком приложении?
  2. Существуют ли другие (лучшие) фреймворки, которые переносят тяжелую работу на чтение пользовательских настроек из web.config?

Ответы [ 3 ]

2 голосов
/ 28 апреля 2009

См. Конструктор разделов конфигурации .

0 голосов
/ 28 апреля 2009

Подходит? конечно. Много работы? Определенно.

Я думаю, что это более уместно, если вы отправляете свой продукт для использования другими. Но если это внутреннее ... это может быть больше работы / головной боли, чем стоит.

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

  1. Config Provider
  2. Строки подключения

Я поместил все свои параметры конфигурации в базу данных, и в файле web.config определен параметр, который переопределит параметр конфигурации базы данных.

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

0 голосов
/ 28 апреля 2009

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

Что касается "лучшей" системы, чем System.Configuration, я просто не могу думать ни о какой. Да, вы, вероятно, в конечном итоге получите множество классов и множество атрибутов, но вы также получите высоко настраиваемый механизм безопасной настройки типов, который легко использовать вашим пользователям Потому что, в конце концов, важен пользовательский опыт.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...