Ресурсы / App.config или База данных, где лучшее место для строк приложения - PullRequest
4 голосов
/ 25 марта 2009

Все,

В настоящее время я смотрю на старое приложение, которое поддерживаю, и оно использует смесь извлечения параметров конфигурации приложения из таблицы App.config и конфигурации приложения в БД.

В новом программном обеспечении, с которым я работаю (порт старого приложения), у меня есть список адресов электронной почты, которые являются статическими и редко меняются, что будет лучшим механизмом для их получения. В настоящее время я использую строки ресурсов, так что их использование - это простой My.Resources. Но каковы преимущества / недостатки хранения информации либо в App.Config, либо в таблице базы данных.

В какой момент не имеет смысла использовать ресурсы?

Ответы [ 3 ]

2 голосов
/ 25 марта 2009

все зависит? некоторые из моих правил:

для входа в файл конфигурации / ресурса

  1. одинаково для каждого пользователя, как и путь к каталогу с изображениями
  2. данные нужны только на уровне пользовательского интерфейса и не будут меняться очень часто, как список штатов США
  3. может варьироваться от сервера к серверу, например, URL ресурса для тестирования или тестирования

для входа в БД

  1. Он изменяется для каждого пользователя или является специфичными для пользователя данными
  2. возможно, кто-то должен поддерживать его из вашей группы разработчиков
  3. Он будет использоваться за пределами слоя пользовательского интерфейса
  4. будет регулярно обновляться

что бы ты ни делал

НЕ ВСТРЕЧАЙТЕ СВОЙ КОД В ВАШЕМ КОДЕ, мне все равно, насколько вы уверены, что сообщение об ошибке уведомляет, что адрес электронной почты не изменится, НЕ СТАЖИВАЙТЕ ЕГО КОД! или через 3 года то, что было бы изменением конфигурации за 2 секунды, приведет к 2 неделям работы, чтобы получить устаревшее устаревшее приложение для компиляции !! или еще одна забавная штука - xml-схема, жестко запрограммированная в приложении с

stringname += "Schema data";
stringname += "Schema data";
stringname += "Schema data";

Как ни странно, тот же парень, пойди разберись.

1 голос
/ 25 марта 2009

Я думаю, что редко меняющиеся настройки можно смело переходить в app.config. Это было довольно прозрачно для новых разработчиков в команде, и все же можно изменить настройки без перекомпиляции.

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

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

0 голосов
/ 01 июля 2009

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

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