Привет, ребята, мне нужно смоделировать следующую ситуацию. Я придумал две возможные альтернативы, но я хочу знать, есть ли лучшее решение.Модель использования нескольких пользователей/групп с использованием Entity Framework 4
Вот сделка ...
Упрощенная схема
User Group
----------- ------------
UserId (PK) GroupId (PK)
Name Name
... ...
\ /
UserGroup
-------------
UserId (FK)
GroupId (FK)
Это просто. Таблица для пользователей, таблица для групп, а затем таблица для привязки пользователей к группе (многие ко многим)
Затем у меня есть другие объекты (например, статьи), которыми могут владеть как пользователь, так и группы (может принадлежат одному пользователю или могут принадлежать одной группе или могут принадлежать пользователю и группе и т. д.).
Так вот сделка. Я мог бы сделать:
Article ArticleOwnership
-------------- ----------------
ArticleId (PK) <----- ArticleId (FK)
Title UserId (FK-NULLABLE)
... GroupId (FK-NULLABLE)
Дело в том, что когда я хочу, чтобы проверить, является ли конкретный пользователь имеет конкретную статью, кажется, я должен проверить для обоих. Это легко использовать с использованием T-SQL, но я хочу использовать Entity Framework (никогда не использовал ORM раньше, так что будьте милыми xD).
Как бы Вы эту модель?
Другой подход может быть:
B
Создайте группу для каждого пользователя, содержащий внутри всего этого пользователя и управлять домовладения только группами. Как это звучит для вас?
Спасибо всем и извините, если мои объяснения не очень ясны, мой английский не совершенен.
Является ли мой вопрос непонятным достаточно? Не получал комментариев или ответов = ( – emzero