0

所以现在我已经设置了我的幻灯片容器,例如: Geoarea、Building、Server

在不同的实体中,从一个超类映射。

现在我面临的下一个问题是:我希望能够将这些容器的内容与其中一个容器相关联......

这就是我最初只是考虑拥有一个容器实体并使用 INT 标志设置容器类型的原因,但我认为从 OO 方面来说这并不顺利或不正确。

现在,我当然可以在我的实体“内容”中为每个可能的容器设置 FK 字段,并将它们设置为可为空并只使用其中一个,但我觉得我在这里陷入了困境,跳出框框思考...我想让获取容器及其相关内容尽可能简单...

每个内容仅与一个容器相关,因此在从不使用多个 FK 字段时拥有 3 个 FK 字段感觉很愚蠢......

4

1 回答 1

0

你有两个解决方案。第一种是使用 Inheritance : Inheritance Mapping,但您的数据库中会有一些冗余。

第二种解决方案是在您的 Child 实体中添加一个 FK,而不是在您的 Mother 实体中添加三个。因此,您将在 Mother 超类中存储公共数据。

于 2012-08-02T19:46:27.313 回答