/// <summary> /// 根据PageRequest来查询,返回PagedQueryResult /// </summary> /// <param name="prp"></param> /// <param name="where"></param> /// <param name="orderBy"></param> /// <returns></returns> public PagedQueryResult <T, TCollection> Query(IPageRequestParams prp, string where, string orderBy) { prp.NullCheck("prp"); int totalCount = 0; PagedQueryResult <T, TCollection> result = this.InnerQuery(prp.ToRowIndex(), prp.PageSize, prp.Top, string.Empty, string.Empty, where, orderBy, totalCount); this.OnAfterQuery(result.PagedData); return(result); }
/// <summary> /// 根据页面参数,select字句,from子句,条件对象,排序条件构造分页查询 /// </summary> /// <param name="prp"></param> /// <param name="select">SQL语句的select部分。如果为空,则使用*</param> /// <param name="from">SQL语句的from部分。如果为空,则使用返回对象的ORTableMapping中TableName属性</param> /// <param name="conditionObject"></param> /// <param name="orderByBuilder"></param> /// <returns></returns> public PagedQueryResult <T, TCollection> Query(IPageRequestParams prp, string select, string from, object conditionObject, IEnumerable <IOrderByRequestItem> orderByBuilder) { prp.NullCheck("prp"); int totalCount = 0; string where = ConditionObjectToWhereString(conditionObject); string orderBy = string.Empty; if (orderByBuilder != null) { OrderBySqlClauseBuilder wrappedBuilder = OrderBySqlClauseBuilder.CreateWrapperBuilder(orderByBuilder); orderBy = wrappedBuilder.ToSqlString(TSqlBuilder.Instance); } PagedQueryResult <T, TCollection> result = this.InnerQuery(prp.ToRowIndex(), prp.PageSize, prp.Top, select, from, where, orderBy, totalCount); this.OnAfterQuery(result.PagedData); return(result); }
public PagedQueryResult <UserTaskModel, UserTaskModelCollection> LoadUserTasks(IPageRequestParams prp, UserTaskQueryCriteria condition, IEnumerable <IOrderByRequestItem> orderByBuilder) { ConnectiveSqlClauseCollection sqlCollection = new ConnectiveSqlClauseCollection(); sqlCollection.Add(ConditionMapping.GetConnectiveClauseBuilder(condition)); string sqlBuilder = sqlCollection.ToSqlString(TSqlBuilder.Instance); var result = Query(prp, sqlBuilder, orderByBuilder); return(result); }
/// <summary> /// 构造方法 /// </summary> /// <param name="prp"></param> public PagedQueryResult(IPageRequestParams prp) { this.PageIndex = prp.PageIndex; this.PageSize = prp.PageSize; this.TotalCount = prp.TotalCount; }
/// <summary> /// 根据页面参数,条件对象,排序条件构造分页查询。select默认使用*。from部分使用返回对象的ORTableMapping中TableName属性 /// </summary> /// <param name="prp"></param> /// <param name="conditionObject"></param> /// <param name="orderByBuilder"></param> /// <returns></returns> public PagedQueryResult <T, TCollection> Query(IPageRequestParams prp, object conditionObject, IEnumerable <IOrderByRequestItem> orderByBuilder) { return(this.Query(prp, string.Empty, string.Empty, conditionObject, orderByBuilder)); }