使用Query或QueryOver连接对象中不存在的关系

时间:2011-10-14 18:44:02

标签: nhibernate

这可能看起来像一个愚蠢的标题,但我遇到了一个小问题,我不确定是否还有另一种方法。

我目前有以下实体:
位置< ---> 位置内容 - > 容器< ---> ContainerContent < --- OrderLine

上述实体关系'用箭头标记。位置可以包含多个 LocationContent LocationContent 包含指向其父级位置等的链接。

我的问题是,每当我需要基本上加入所有这些表( JoinAlias )来限制我的结果集时我都无法做到,因为并非所有上述实体都具有双向关系。在某些情况下,我对双向关系没有意义,因为用户永远不会以这种方式访问​​数据。当我查询数据时,它似乎才有意义。

这些双向关系是否是使用QueryOver和Query查询数据的必要条件,还是有另外一种方法可以解决这个问题?

1 个答案:

答案 0 :(得分:4)

dotjoe把它钉了下来:你需要那些关系。

为什么你认为他们是邪恶的?他们是免费的。

允许自由形式连接的唯一查询方法是HQL。