解决多个实体的数据库架构
Addresses database schema for multiple entities
我正在研究 entity framework 和代码优先方法。场景是这样的:
- 一个用户可以拥有多个公司(每个公司都有一个地址)
- 一个用户每个公司可以有多个房子(每个房子都有一个地址)
我正在考虑两种管理地址的方法:
- 有一个
Address
table,其中包含 CompanyId
和 HouseId
的列(对于公司地址,仅 CompanyId
将被插入,对于房屋,两个 ID将被插入。
- 有
CompanyAddress
和 HouseAddress
table,它们之间的唯一区别是 CompanyId
与 HouseId
的 FK。
你会怎么做?还有其他更好的选择吗?
在 EF Core 中,您应该使用 Owned Entity Types for this. In EF 6, use a Complex Type。两者都允许您在 .NET 中使用地址类型,而无需在数据库中使用地址 table。
我正在研究 entity framework 和代码优先方法。场景是这样的:
- 一个用户可以拥有多个公司(每个公司都有一个地址)
- 一个用户每个公司可以有多个房子(每个房子都有一个地址)
我正在考虑两种管理地址的方法:
- 有一个
Address
table,其中包含CompanyId
和HouseId
的列(对于公司地址,仅CompanyId
将被插入,对于房屋,两个 ID将被插入。 - 有
CompanyAddress
和HouseAddress
table,它们之间的唯一区别是CompanyId
与HouseId
的 FK。
你会怎么做?还有其他更好的选择吗?
在 EF Core 中,您应该使用 Owned Entity Types for this. In EF 6, use a Complex Type。两者都允许您在 .NET 中使用地址类型,而无需在数据库中使用地址 table。