refactoring.
This commit is contained in:
parent
cc6fc09d79
commit
b5331a7837
@ -1,74 +1,12 @@
|
|||||||
using PoweredSoft.DynamicLinq.Helpers;
|
using PoweredSoft.DynamicLinq.Helpers;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
|
|
||||||
namespace PoweredSoft.DynamicLinq.Fluent
|
namespace PoweredSoft.DynamicLinq.Fluent
|
||||||
{
|
{
|
||||||
public class SortBuilderBase
|
|
||||||
{
|
|
||||||
public List<OrderByPart> Sorts { get; protected set; } = new List<OrderByPart>();
|
|
||||||
|
|
||||||
public virtual SortBuilderBase Sort(string path, QuerySortDirection sortDirection, bool appendSort)
|
public class OrderByBuilder<T> : OrderByBuilderBase
|
||||||
{
|
|
||||||
Sorts.Add(new OrderByPart
|
|
||||||
{
|
|
||||||
Path = path,
|
|
||||||
sortDirection = sortDirection,
|
|
||||||
AppendSort = appendSort
|
|
||||||
});
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public virtual SortBuilderBase OrderBy(string path)
|
|
||||||
{
|
|
||||||
Sorts.Clear();
|
|
||||||
Sorts.Add(new OrderByPart
|
|
||||||
{
|
|
||||||
Path = path,
|
|
||||||
sortDirection = QuerySortDirection.Ascending,
|
|
||||||
AppendSort = false
|
|
||||||
});
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public virtual SortBuilderBase OrderByDescending(string path)
|
|
||||||
{
|
|
||||||
Sorts.Clear();
|
|
||||||
Sorts.Add(new OrderByPart
|
|
||||||
{
|
|
||||||
Path = path,
|
|
||||||
sortDirection = QuerySortDirection.Descending,
|
|
||||||
AppendSort = false
|
|
||||||
});
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public virtual SortBuilderBase ThenBy(string path)
|
|
||||||
{
|
|
||||||
Sorts.Add(new OrderByPart
|
|
||||||
{
|
|
||||||
Path = path,
|
|
||||||
sortDirection = QuerySortDirection.Ascending,
|
|
||||||
AppendSort = true
|
|
||||||
});
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public virtual SortBuilderBase ThenByDescending(string path)
|
|
||||||
{
|
|
||||||
Sorts.Add(new OrderByPart
|
|
||||||
{
|
|
||||||
Path = path,
|
|
||||||
sortDirection = QuerySortDirection.Descending,
|
|
||||||
AppendSort = true
|
|
||||||
});
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public class OrderByBuilder<T> : SortBuilderBase
|
|
||||||
{
|
{
|
||||||
public IQueryable<T> Query { get; }
|
public IQueryable<T> Query { get; }
|
||||||
|
|
||||||
|
66
PoweredSoft.DynamicLinq/Fluent/OrderBy/OrderByBuilderBase.cs
Normal file
66
PoweredSoft.DynamicLinq/Fluent/OrderBy/OrderByBuilderBase.cs
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
namespace PoweredSoft.DynamicLinq.Fluent
|
||||||
|
{
|
||||||
|
public class OrderByBuilderBase
|
||||||
|
{
|
||||||
|
public List<OrderByPart> Sorts { get; protected set; } = new List<OrderByPart>();
|
||||||
|
|
||||||
|
public virtual OrderByBuilderBase Sort(string path, QuerySortDirection sortDirection, bool appendSort)
|
||||||
|
{
|
||||||
|
Sorts.Add(new OrderByPart
|
||||||
|
{
|
||||||
|
Path = path,
|
||||||
|
sortDirection = sortDirection,
|
||||||
|
AppendSort = appendSort
|
||||||
|
});
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual OrderByBuilderBase OrderBy(string path)
|
||||||
|
{
|
||||||
|
Sorts.Clear();
|
||||||
|
Sorts.Add(new OrderByPart
|
||||||
|
{
|
||||||
|
Path = path,
|
||||||
|
sortDirection = QuerySortDirection.Ascending,
|
||||||
|
AppendSort = false
|
||||||
|
});
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual OrderByBuilderBase OrderByDescending(string path)
|
||||||
|
{
|
||||||
|
Sorts.Clear();
|
||||||
|
Sorts.Add(new OrderByPart
|
||||||
|
{
|
||||||
|
Path = path,
|
||||||
|
sortDirection = QuerySortDirection.Descending,
|
||||||
|
AppendSort = false
|
||||||
|
});
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual OrderByBuilderBase ThenBy(string path)
|
||||||
|
{
|
||||||
|
Sorts.Add(new OrderByPart
|
||||||
|
{
|
||||||
|
Path = path,
|
||||||
|
sortDirection = QuerySortDirection.Ascending,
|
||||||
|
AppendSort = true
|
||||||
|
});
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public virtual OrderByBuilderBase ThenByDescending(string path)
|
||||||
|
{
|
||||||
|
Sorts.Add(new OrderByPart
|
||||||
|
{
|
||||||
|
Path = path,
|
||||||
|
sortDirection = QuerySortDirection.Descending,
|
||||||
|
AppendSort = true
|
||||||
|
});
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user