问题标签 [icriteria]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
380 浏览

nhibernate - 如何将 NHibernate.Expression.Order 对象转换为字符串?

我有一个 NHibernate.Expression.Order 对象列表,并希望将它们转换为 sql 字符串。

即“名称ASC,ID DESC,金额ASC”

0 投票
1 回答
291 浏览

c# - 反向 LIKE 的 nHibernate 标准

我有以下两个实体:

公共类 Entity1 { 公共 IList e2 { 获取;放; } }

公共类 Entity2 { 公共字符串标题 { 获取;放; } }

我只有 Entity1 的存储库,我知道我可以使用以下条件进行 LIKE 查询:

criteria.CreateAlias("e2", "e1e2").Add(Restrictions.LIKE("Title", "needle", Match.Anywhere);

但我需要反向搜索:

Restrictions.LIKE("needle", "Title", Match.Anywhere)

我该怎么做?

0 投票
4 回答
9527 浏览

performance - NHibernate HQL vs CriteriaAPI vs QueryOver vs Linq。表现

hql和criteriaApi和QueryOver之间的性能差异是什么?是否存在一种比另一种更快或更慢的情况?

编辑:我用 QueryOver 和 Linq 扩展了这个问题。

==============================================

好吧,我不确定将哪个回复标记为答案,所以我会用大多数 VoteUp 标记帖子。我不知道。这实际上是更多的讨论而不是一个问题。

0 投票
1 回答
8725 浏览

c# - 如何使用 NHibernate Criteria API 获取“top n”?

如何使用 NHibernate Criteria API 获取“top n”?理想情况下,我想使用分离的标准。

0 投票
2 回答
951 浏览

.net - ICriteria,增加收藏内容限制

使用 NHibernate 我试图获取 B 的列表,其中 B 的 IList 属性包含 A 的特定实例。

以下代码有望更清楚地解释这种情况:

第二个查询失败并出现错误:could not resolve property: a_As of: B

如何使用对象实例执行此查询,而无需像上面第一个查询中那样显式使用 ID 属性。

编辑:为了对此进行扩展,我有一个通用类,它对我的​​实体执行 NHibernate 操作。我刚刚创建了一个“IsReferenced”方法,其开头如下:

我正在使用 typeProps 构建一个 MultiCriteria 来查找任何引用指定实体的任何实体。它适用于普通属性,但集合属性让我感到悲伤。我不确定如何将限制添加到标准中。

0 投票
1 回答
493 浏览

nhibernate - Nhibernate - 分页和急切加载实体

我有两个实体,一个团队和一个员工。

我想要一份拥有热切的团队的员工名单。该列表必须分页。

为什么这不起作用?

SQL 结果:

0 投票
2 回答
1894 浏览

c# - NHibernate - 使用 ICriteria 和可选 ICriteria 调用进行分页

我想做这样的事情......

但我不知道如何将其传递Func<ICriteria,ICriteria>ISessionor ICriteria

我有一个标准的分页扩展方法,这个扩展方法应该有一个重载,我可以在其中传递额外的 ICriteria 方法,以便我可以额外设置FetchMode或其他东西。

扩展方法:

编辑:

如果没有重载,它看起来像这样:

扩展方法:

这条线var copiedCriteria = (ICriteria) criteria.Clone();在这里闻起来很臭,但我不知道如何改变它。

你会建议哪种方法?

0 投票
2 回答
1010 浏览

nhibernate - 防止 NHibernate 在 ORDER BY 中出现别名

我有一个包含 Order By 子句的查询。NHibernate 生成的 SQL 看起来像

这会失败,因为 MS SQL Server 的 Order by 子句中不允许使用“as”。有什么办法可以防止混叠?

我编写的条件查询如下所示:

0 投票
2 回答
346 浏览

c# - 选择 NHibernate 中的 CONVERT() 位置

你好我想用ICriteria这样的接口生成一个sql查询

select * from tableName where (dataColumn like '%2010-06-09%')

我在谷歌进行了研究,发现 CONVERT() 函数可以做到这一点:

SELECT * FROM DATE_SAMPLE WHERE CONVERT(CHAR(10),SAMPLE_DATE,120) = '2003-04-09'

我怎样才能在带有 ICriteria 的 NHibernate 中做到这一点?

0 投票
1 回答
1416 浏览

nhibernate - NHibernate:使用 OR 运算符查询

我正在寻找一种将 OR 运算符构建到查询中的方法,以在表的一个字段以及连接表的另一个字段中查找特定值。这在 SQL 中是非常基本的,但我无法为全世界弄清楚如何在 NHibernate 中做到这一点。我一直在网上搜索,但我发现的例子对我来说非常模糊,我发现它们很难应用于我的特定实现。

我有一个名为 Party 的类,有一个名为 reference 的字符串字段,它是主要的参考。新的要求要求还能够为聚会添加大量的旁注。所以我不得不添加另一个名为 PartyReference 的类,它与 Party 具有多对一的关系。

现在有了给定的引用,我必须在这个主要引用字段以及侧面引用中查找它的值。但只要我不知道对 NHibernate 说这个字段必须对应于值或其他值之一,我就不能让它工作。

我做了一个看起来像这样的解决方法,但它既不优雅又愚蠢,因为必须有办法说“或”:

我当然意识到我也可以通过简单地从 Party 类中删除主要引用并将其与其他引用同等对待,作为 PartyReference 来解决这个问题。但是在某个阶段,无论如何我都必须对 NHibernate 使用 OR 查询,所以我现在不妨用这个特殊情况来解决它。

有任何想法吗?