大家好我必须建模以下情况。我提出了两种可能的替代方案,但我想知道是否有更好的解决方案。
这是交易......
简化架构
User Group
----------- ------------
UserId (PK) GroupId (PK)
Name Name
... ...
\ /
UserGroup
-------------
UserId (FK)
GroupId (FK)
这很简单。用户表,用于组的表,然后是用于将用户与组相关联的表(多对多)
然后我有其他实体(即文章)可以由用户和组拥有(可以由一个用户拥有,或者可以由一个组拥有,或者可以由用户和组拥有等等) )。
所以这是交易。我能做到:
A
Article ArticleOwnership
-------------- ----------------
ArticleId (PK) <----- ArticleId (FK)
Title UserId (FK-NULLABLE)
... GroupId (FK-NULLABLE)
这里的问题是,当我想检查特定用户是否拥有特定文章时,似乎我必须检查两者。这很容易使用T-SQL,但我想使用Entity Framework(以前从未使用过ORM,所以要很好用xD)。
你会如何模拟这种情况???
另一种方法可能是:
乙
为每个用户创建一个组,仅包含该用户,并仅按组管理所有权。这听起来怎么样?
感谢所有人,如果我的解释不是很清楚,那我的英语并不完美。
答案 0 :(得分:0)
我最终做了选项A ......