NHibernate分页

转载:http://www.cnblogs.com/tenghoo/archive/2011/02/14/1954393.html

public IList<Orders> GetUserOrderByUserID(string userid, int PageIndex, int PageSize, out long count)
        {
            using (ISession _session = base.GetSession())
            {
                var hql = "select count(*) from Orders where userid=:userid";
                IQuery query = _session.CreateQuery(hql);
                query.SetString("userid", userid);
                object obj = query.UniqueResult();
                long.TryParse(obj.ToString(), out count);


                var list = from p in _session.Linq<Orders>()
                   .Where(p => p.UserID == userid)
                   .OrderByDescending(p => p.Otime)
                   .Skip((PageIndex - 1) * PageSize)
                   .Take(PageSize)
                           select p;

                return list.ToList<Orders>();
            }
        }

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。