列与附加列的连接

时间:2018-09-19 09:22:36

标签: c# .net-core entity-framework-core

我在数据库中有这样的列:

User
- int Id
- string Name

Flat
- int Id
- string Describe

该公寓有一个管理公寓的人和其他居民

我考虑这个解决方案:

这是ManyToMany与附加列的关系。如果他是管理人,则在此列中将提供信息

UserFlat
- int UserId
- int FlatId
- bool Creator

这是正确的方法吗?

我应该如何准确实现它?

它是直接作为ManyToMany关系还是作为手动创建和管理的表?

障碍是用户只能属于一间公寓(将来,管理者将可以属于几间公寓),而其余人员只能属于一间公寓

还是完全不同且更好的解决方案?

1 个答案:

答案 0 :(得分:1)

如果一个用户只能有一个单位,而一个单位只能有一个经理,则不需要单独的表。即使一个用户可以是多个单位的管理员,这也足够并且可以正常工作:

    User
- int Id
- string Name
- int FlatId > FK to a Flat

Flat
- int Id
- string Describe
- int ManagerId > FK to a User