Каков наилучший подход для хранения информации о конфигурации в серверном приложении? (Нет базы данных) - PullRequest
2 голосов
/ 29 июля 2011

У меня есть серверное приложение, написанное на C #.

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

Как лучше всего хранить его? Нет базы данных.

Есть ли проблемы с производительностью ConfigurationManager в этом случае?

Как насчет тысяч записей? Можно ли избежать использования какой-либо базы данных?

Спасибо!

Ответы [ 5 ]

5 голосов
/ 29 июля 2011

Я знаю, что вы сказали «Нет базы данных», но рассмотрите возможность использования SQL Server Compact , который предоставляет бесплатную, компактную возможность SQL Server, которую вам не нужно устанавливать - это вроде как взрослая версия Jet.

В качестве альтернативы вы можете посмотреть, сможете ли вы найти реализацию ISAM.

1 голос
/ 29 июля 2011

Я согласен со Стивом Морганом. Я рекомендую SQL Server Compact.

1 голос
/ 29 июля 2011

Предполагая, что у вас нет базы данных на вашем хостинге, есть еще несколько вариантов:

  1. Подход SQL Server Compact, когда вы просто помещаете файлы БД в App_Data и используете ADONET длядобраться до них, как если бы это был полнофункциональный сервер SQL.
  2. OLEDB-соединение с CSV, DBF или любым другим структурированным файлом.
  3. Доморощенное решение - что-то вроде коллекции IDictionary <> сохранялось вручную в XML, плоский файл, двоичный массив или что-либо еще.
1 голос
/ 29 июля 2011

Возможно, вы не сможете использовать полноценную базу данных, но вы можете рассмотреть встроенный SQL Engine:

SQL Compact Edition или SQLLite

Я никогда не использовал SQL CE, но SQLLite - это всего лишь одна DLL.

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

1 голос
/ 29 июля 2011

Так что вы всегда можете использовать XML для него. Или действительно используйте файлы ConfigurationManager (вот пример MSDN или здесь Загрузка пользовательских файлов конфигурации )

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