Esempio n. 1
0
        private static string Pagineted(string sql, PaginatorFilter filter)
        {
            if (filter == null || filter.PageSize <= 0)
                return sql;

            sql = @"SELECT * FROM (SELECT v.*, ROWNUM rn FROM (" + sql +
                ") v WHERE rownum <= " + (filter.Skip > 0 ? filter.Take - 1 : filter.Take) + ") WHERE rn >= " + filter.Skip;
            return sql;
        }
Esempio n. 2
0
        private static string OrderBy(string sql, PaginatorFilter filter)
        {
            if (filter == null || string.IsNullOrEmpty(filter.OrderBy))
                return sql;

            sql += string.Format(" ORDER BY \"{0}\" {1}", filter.OrderBy.ToUpper(), filter.Order.ToString());
            return sql;
        }
Esempio n. 3
0
 public string Apply(string sql, PaginatorFilter filter)
 {
     return Pagineted(OrderBy(sql, filter), filter);
 }