开发者社区> 问答> 正文

(N)休眠自动加入

我正在使用NHibernate开发一个Web应用程序。您能否告诉我如何为以下SQL查询编写NHibernate查询:

SELECT v1.Id FROM VIEW v1 LEFT JOIN VIEW v2 ON v1.SourceView = v2.Id ORDER BY v1.Position 这基本上是一个自动联接,但是我不知道如何在Nhibernate中编写它。可以说属性名称与表列名称相同。

问题来源于stack overflow

展开
收起
保持可爱mmm 2019-11-15 17:57:17 372 0
1 条回答
写回答
取消 提交回答
  • 您可以只对原始实体执行选择,并使两个对象之间的关联为“ lazy = false”。只要实体被映射,则两者都将被返回,并且在尝试访问该对象时您不会得到lazyloadingexception。

    如果您不想映射“ lazy = false”,则还可以遍历结果并执行某种操作(例如询问其是否为null; if(v1.AssocatedObject == null){})以确保在会话打开时加载数据。

    更新:

    我认为实际上有一个比NHibernateUtil.Initialise()更好的函数,它可以初始化集合而不必在其中徘徊。

    2019-11-15 17:57:34
    赞同 展开评论 打赏
问答分类:
SQL
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载