UserSettingsService - это сервис хранения пользовательских настроек.

  1. Позволяет устанавливать, получать и удалять пользовательские настройки. Реализовано несколько полей с различными стандартными типами - удобнее использовать, не требуется затрат на преобразование типов.
  2. Реализовано множество перегрузок методов для удобства применения.
  3. Есть общие настройки (Common), которые задаются на всё приложение сразу.
  4. Реализована поддержка указания настройки как по именам (пользователя, модуля и настройки), так и по уникальным идентификаторам. Эта реализация позволяет в прикладной части иметь соответствующие справочники, которые могут визуально редактироваться и использоваться для управления настройками.
  5. Сервис может использоваться как сборка в рамках приложения, так и как WCF-сервис (возможность в разработке).
  6. Имеется набор методов для работы с коллекциями настроек (в разработке). Это позволяет реализовывать функциональность вида: “дай мне все настройки пользователя N, чтобы я положил их в свой кэш; удалю из кэша, когда пользователь выйдет из системы”.
  7. Написание сервиса ведётся с применением Unit-тестирования (NUnit).

Для работы UserSettingsService требуется отдельная таблица в БД.