Где хранить объекты-значения, которые могут обновляться пользователем и отображаться в списке для пользователя? - PullRequest
0 голосов
/ 17 июля 2011

Я пытаюсь обернуть голову вокруг элементов, которые будут отображаться в раскрывающемся элементе управления веб-приложения, и эти элементы являются объектами значений в моей модели.В качестве примера, давайте предположим, что я сущность с именем RFI (запрос информации).Этот RFI имеет объект значения с именем State.Возможные значения состояния, предписанные бизнесом: Создано, Открыто, Приостановлено, Закрыто.Эти значения должны отображаться пользователю и обновляться пользователем (в некоторой консоли администратора).Поскольку значения сохраняются только на самой сущности, каков наилучший способ хранения списка возможных значений?

Я использую базу данных (SQL 2008) и среду ORM (Entity Framework 4.1), однако я не уверен, что база данных - лучшее место для хранения возможных значений.Я слышал о некоторых пользователях, создающих файлы ресурсов (документы XML, файлы CSV и т. Д.) Для таких вещей.Что другие участники сообщества делают в подобном сценарии и какие рекомендованные рекомендации.

Ответы [ 2 ]

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

В моей компании мы создали таблицу Lookup в базе данных с дополнительным столбцом, в котором указывается объект, с которым связано каждое значение, и несколько раз отобразили таблицу с другим ключом объекта (мы реализовали его в NHibernate, и я 'Я не уверен, что это возможно в EF, если бы вы не могли просто использовать Views вместо этого) для различных классов объектов.

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

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

Таблица поиска в базе данных с именем «State» (или аналогичная) с 4 строками.Это будет внешний ключ в таблице «RFI».

Причины:

  • поиск «Закрыт» и т. Д.
  • другой код клиента будет использовать его (он будет в какой-то момент)
  • это реляционная ...

Например, захватите модель с помощью Object Role Modeling и посмотрите, что это дает.

...