HNibernate 的单向继承

发布于 2024-11-04 01:25:48 字数 476 浏览 6 评论 0原文

坦率地说,我不知道要搜索什么关于我的问题,所以就到这里。

我正在为我即将开始的新项目尝试一些不同的方法。

我有一个 PostgreSQL 数据库管理系统。我有一个具有多个模式的数据库。这个想法是有一个“根”模式,它作为其他模式的基础。 我想要实现的是一种“单向”继承。我希望根表中的查询不查看子类模式,但我还没有找到一种方法来做到这一点。

当查询子类时,我想加入基类,但是当查询基类时,我不想查询子类。

我了解不同继承方法之间的差异,但我不确定我想做的事情是否可行。

我当前的设置实际上适用于不同模式中的子类,但是在查询基类时,NHibernate 会查询每个子类以查看基类是否是这些类型中的任何一种。

也许这种行为在某些情况下是合适的,但在其他情况下,我只想“单独”查询基类。

作为另一个要求,基类不能知道子类(它们就像插件/扩展)。

希望以上内容有道理——表达起来有点困难。

提前致谢...

I frankly haven't got a clue what to search for reagarding my question, so here goes.

I'm trying out some different approaches for a new project I'm starting on.

I have a PostgreSQL DBMS. I have a single DB with multiple schemas. The idea is that there is a "root" schema, which works as a foundation for the other schemas.
What I'm trying to achieve is a sort of "one-way" inheritance. I'd like my queries in the root-tables to not look at the subclassed schemas, but I haven't found a way to do that.

When querying the subclasses, I'd like to join with the base class, but when querying the base class, I don't want to query the subclasses.

I understand the difference between the different inheritance approaches, but I'm just not sure if what I'm trying to do is possible.

My current setup actually works with subclasses in different schemas, but when querying the base class, NHibernate goes to query each of the subclasses to see if the base class is any of those types.

Maybe the behavior is appropriate in some situations, but in others, I'd just like to query the base class "alone".

As another requirement, the base class cannot know about the subclasses (they're like plugins/extensions).

Hope the above made any sense - it was a bit difficult to express.

Thanks in advance...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

她比我温柔 2024-11-11 01:25:48

我想通了。我的问题出在我的 SubclassMap 中。显然 NHibernate 不支持带有连接子类的显式多态性。我现在使用 ClassMap 加入每个子类,并调用 Join(...) 。在这种情况下,显式多态性起作用。

I figured it out. My problem was in my SubclassMap<>. Apparently NHibernate don't support explicit polymorphism with joined-subclass. I am now joining each subclass using ClassMap<> and calling Join(...) instead. In this scenario, explicit polymorphism works.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文