mirror of
https://github.com/Biarity/Sieve.git
synced 2024-11-22 05:22:57 +01:00
Convert parsing from getters to methods
This commit is contained in:
parent
c816cf2f2a
commit
f9c7fb4cb0
@ -20,8 +20,8 @@ namespace Sieve.Models
|
|||||||
|
|
||||||
int? PageSize { get; set; }
|
int? PageSize { get; set; }
|
||||||
|
|
||||||
List<TFilterTerm> FiltersParsed { get; }
|
List<TFilterTerm> GetFiltersParsed();
|
||||||
|
|
||||||
List<TSortTerm> SortsParsed { get; }
|
List<TSortTerm> GetSortsParsed();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -25,9 +25,7 @@ namespace Sieve.Models
|
|||||||
[DataMember, Range(1, int.MaxValue)]
|
[DataMember, Range(1, int.MaxValue)]
|
||||||
public int? PageSize { get; set; }
|
public int? PageSize { get; set; }
|
||||||
|
|
||||||
public List<TFilterTerm> FiltersParsed
|
public List<TFilterTerm> GetFiltersParsed()
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
{
|
||||||
if (Filters != null)
|
if (Filters != null)
|
||||||
{
|
{
|
||||||
@ -65,11 +63,8 @@ namespace Sieve.Models
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
public List<TSortTerm> SortsParsed
|
public List<TSortTerm> GetSortsParsed()
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
{
|
||||||
if (Sorts != null)
|
if (Sorts != null)
|
||||||
{
|
{
|
||||||
@ -96,5 +91,4 @@ namespace Sieve.Models
|
|||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -164,14 +164,14 @@ namespace Sieve.Services
|
|||||||
IQueryable<TEntity> result,
|
IQueryable<TEntity> result,
|
||||||
object[] dataForCustomMethods = null)
|
object[] dataForCustomMethods = null)
|
||||||
{
|
{
|
||||||
if (model?.FiltersParsed == null)
|
if (model?.GetFiltersParsed() == null)
|
||||||
{
|
{
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
Expression outerExpression = null;
|
Expression outerExpression = null;
|
||||||
var parameterExpression = Expression.Parameter(typeof(TEntity), "e");
|
var parameterExpression = Expression.Parameter(typeof(TEntity), "e");
|
||||||
foreach (var filterTerm in model.FiltersParsed)
|
foreach (var filterTerm in model.GetFiltersParsed())
|
||||||
{
|
{
|
||||||
Expression innerExpression = null;
|
Expression innerExpression = null;
|
||||||
foreach (var filterTermName in filterTerm.Names)
|
foreach (var filterTermName in filterTerm.Names)
|
||||||
@ -281,13 +281,13 @@ namespace Sieve.Services
|
|||||||
IQueryable<TEntity> result,
|
IQueryable<TEntity> result,
|
||||||
object[] dataForCustomMethods = null)
|
object[] dataForCustomMethods = null)
|
||||||
{
|
{
|
||||||
if (model?.SortsParsed == null)
|
if (model?.GetSortsParsed() == null)
|
||||||
{
|
{
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
var useThenBy = false;
|
var useThenBy = false;
|
||||||
foreach (var sortTerm in model.SortsParsed)
|
foreach (var sortTerm in model.GetSortsParsed())
|
||||||
{
|
{
|
||||||
var property = GetSieveProperty<TEntity>(true, false, sortTerm.Name);
|
var property = GetSieveProperty<TEntity>(true, false, sortTerm.Name);
|
||||||
|
|
||||||
|
@ -148,9 +148,9 @@ namespace SieveUnitTests
|
|||||||
Filters = "LikeCount==50",
|
Filters = "LikeCount==50",
|
||||||
};
|
};
|
||||||
|
|
||||||
Console.WriteLine(model.FiltersParsed[0].Value);
|
Console.WriteLine(model.GetFiltersParsed()[0].Value);
|
||||||
Console.WriteLine(model.FiltersParsed[0].Operator);
|
Console.WriteLine(model.GetFiltersParsed()[0].Operator);
|
||||||
Console.WriteLine(model.FiltersParsed[0].OperatorParsed);
|
Console.WriteLine(model.GetFiltersParsed()[0].OperatorParsed);
|
||||||
|
|
||||||
var result = _processor.Apply(model, _posts);
|
var result = _processor.Apply(model, _posts);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user