Rem*_*yth 8 nhibernate queryover
这篇NHibernate博客文章指出了如何创建(使用)分离的QueryOver查询(类似于).然而,看着这一点,它看起来并不像我.DetachedCriteriaQueryOver.Of<T>()
使用DetachedCriteria,我会创建我的实例并设置它,但我需要,然后调用GetExecutableCriteria()然后分配会话并执行查询.使用"分离" QueryOver,大多数API都不可用(即,添加限制,连接,排序等等),直到我打电话GetExecutableQueryOver,这需要一个ISession或IStatelessSession,此时您不再断开连接.
你如何使用分离的QueryOver实例?
编辑:
实际问题与我如何存储分离的QueryOver实例有关:
public class CriteriaQuery<T>
{
internal protected QueryOver<T> _QueryOver { get; set; }
public CriteriaQuery()
{
_QueryOver = QueryOver.Of<T>();
}
// Snip
}
Run Code Online (Sandbox Code Playgroud)
它应该是一个QueryOver<T, T>.
Dan*_*ing 13
我正在使用NHibernate 3.1.0.4000.以下代码成功编译:
Employee salesRepAlias = null;
var query = QueryOver.Of<Customer>()
.JoinAlias(x => x.SalesRep, () => salesRepAlias)
.Where(x => x.LastName == "Smith")
.Where(() => salesRepAlias.Office.Id == 23)
.OrderBy(x => x.LastName).Asc
.ThenBy(x => x.FirstName).Asc;
return query.GetExecutableQueryOver(session)
.List();
Run Code Online (Sandbox Code Playgroud)
这说明了对分离的QueryOver使用限制,连接和排序,就像使用常规QueryOver一样.
您能否发布演示不可用的API功能的代码?
| 归档时间: |
|
| 查看次数: |
4126 次 |
| 最近记录: |