DAL/Pagination.cs
(完整代码) 1KBusing System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;
using NHibernate;
namespace DAL
{
public class Pagination<T>
{
private ISession _session;
public ISession Session
{
get { return _session; }
}
public Pagination(ISession session)
{
_session = session;
}
/// <summary>
/// 分页程序
/// </summary>
/// <param name="HQL">HQL语句</param>
/// <param name="FirshPage">显示页码,首页从0开始</param>
/// <param name="PageSize">页面记录数</param>
/// <returns>Ilist集合</returns>
public IList<T> PageList(string HQL, int PageSize, int CurrentPageIndex)
{
return (_session.CreateQuery(HQL)
.SetFirstResult(PageSize * (CurrentPageIndex - 1))
.SetMaxResults(PageSize)
.List<T>());
}
/// <summary>
/// 记录总数
/// </summary>
/// <param name="HQL">HQL语句</param>
/// <returns>总记录数</returns>
public int CountRecord(string HQL)
{
return _session.CreateQuery(HQL).List().Count;
}
/// <summary>
/// 总页数
/// </summary>
/// <param name="CountRecord">总记录数</param>
/// <param name="PageSize">页面显示条数</param>
/// <returns>总页面数</returns>
public int PageCount(int CountRecord,int PageSize)
{
return ((CountRecord % PageSize) == 0 ? (CountRecord / PageSize) : (CountRecord / PageSize + 1));
}
}
}
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
