带有子查询的休眠选择查询?
Posted
技术标签:
【中文标题】带有子查询的休眠选择查询?【英文标题】:Nhibernate select query with subquery? 【发布时间】:2012-07-03 01:13:03 【问题描述】:我是 C# 的 Nhibernate 新手。
这是我的 SQL 查询:
select * from advis_productattributes where ID in
(select attributeid from advis_productattributes_products where productid=1);
我知道 HQL 中的简单选择查询:
string hql = @"select p from ProductAttributes_Products p.ProductId :id";
var query = new SimpleQuery<ProductAttributes_Products>(hql);
query.SetParameter("id", ProductId);
return query.Execute();
我在网上搜索过,但仍然失败。如何使用子查询编写 HQL?
这是类的设计。
【问题讨论】:
能否展示相关的模型类? @ClaudioRedi 我已经用图表更新了问题。谢谢 【参考方案1】:我相信您可以通过使用 NHibernate LINQ 来实现这一点。请参考这些堆栈溢出Answer #1 和Answer #2
【讨论】:
谢谢@Aravinth Kannan,很抱歉我是 NHibarnate 的第一天。 Nhibarnate Linq Linq 是 Nhibarnate 的吗?我需要一些其他类/控件来使用它吗?谢谢 嗨,您不需要任何额外的控件来使用 Linq for NHibernate。这一切都与您的 NHibernate 库捆绑在一起。你可以参考这个Tutorial 开始..【参考方案2】:我不知道您在网上的确切位置搜索...但是官方文档包含您需要了解的关于 HQL 中的 subqueries 的所有信息
和 SQL 差不多。
【讨论】:
以上是关于带有子查询的休眠选择查询?的主要内容,如果未能解决你的问题,请参考以下文章