added sortings.

This commit is contained in:
David
2018-02-12 04:18:44 -06:00
parent a3139cb892
commit 7bdb84e896
8 changed files with 227 additions and 10 deletions
@@ -2,6 +2,7 @@
using PoweredSoft.DynamicLinq.Helpers;
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
@@ -18,6 +19,8 @@ namespace PoweredSoft.DynamicLinq.Extensions
return query;
}
public static IQueryable<T> Query<T> (this IQueryable<T> query, Action<QueryBuilder<T>> callback)
{
var queryBuilder = new QueryBuilder<T>(query);
@@ -25,5 +28,45 @@ namespace PoweredSoft.DynamicLinq.Extensions
var ret = queryBuilder.Build();
return ret;
}
public static IQueryable<T> Sort<T>(this IQueryable<T> query, string path, SortOrder sortOrder, bool appendSort)
{
var qb = new QueryBuilder<T>(query);
qb.Sort(path, sortOrder, appendSort);
var ret = qb.Build();
return ret;
}
public static IQueryable<T> OrderBy<T>(this IQueryable<T> query, string path)
{
var qb = new QueryBuilder<T>(query);
qb.OrderBy(path);
var ret = qb.Build();
return ret;
}
public static IQueryable<T> OrderByDescending<T>(this IQueryable<T> query, string path)
{
var qb = new QueryBuilder<T>(query);
qb.OrderByDescending(path);
var ret = qb.Build();
return ret;
}
public static IQueryable<T> ThenBy<T>(this IQueryable<T> query, string path)
{
var qb = new QueryBuilder<T>(query);
qb.ThenBy(path);
var ret = qb.Build();
return ret;
}
public static IQueryable<T> ThenByDescending<T>(this IQueryable<T> query, string path)
{
var qb = new QueryBuilder<T>(query);
qb.ThenByDescending(path);
var ret = qb.Build();
return ret;
}
}
}