DetachedCriteria和ICriteria有什么区别?

9

这些类有一些相似的方法,但似乎有些微小的差别。

它们之间有什么区别,我应该在什么情况下使用每个类?

1个回答

11

离线查询条件可在不参考ISession的情况下构建。您可以稍后将该条件应用于ISession以获得可执行的ICriteria

如果您有一个会话,请使用ICriteria

当您不确定查询将针对哪个会话执行时,请使用DetachedCriteria

请注意,DetachedCriteria没有实现ICriteria - 它们不能互换。 您必须始终调用detachedCriteria.GetExecutableCriteria(session)来获取ICriteria实例。


@kilonet 是的,看起来很奇怪。如果你在第二个断点上设置一个断点,并检查本地变量 category 的值,它是什么? - Jay
是的,这是一个变量命名问题。 - x__dos
如果你在使用通用数据访问层,DetachedCriteria非常不错。 - Henrik Bøgelund Lavstsen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接