mirror of
https://github.com/Biarity/Sieve.git
synced 2024-11-21 21:12:50 +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; }
|
||||
|
||||
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)]
|
||||
public int? PageSize { get; set; }
|
||||
|
||||
public List<TFilterTerm> FiltersParsed
|
||||
{
|
||||
get
|
||||
public List<TFilterTerm> GetFiltersParsed()
|
||||
{
|
||||
if (Filters != null)
|
||||
{
|
||||
@ -65,11 +63,8 @@ namespace Sieve.Models
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public List<TSortTerm> SortsParsed
|
||||
{
|
||||
get
|
||||
public List<TSortTerm> GetSortsParsed()
|
||||
{
|
||||
if (Sorts != null)
|
||||
{
|
||||
@ -97,4 +92,3 @@ namespace Sieve.Models
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -164,14 +164,14 @@ namespace Sieve.Services
|
||||
IQueryable<TEntity> result,
|
||||
object[] dataForCustomMethods = null)
|
||||
{
|
||||
if (model?.FiltersParsed == null)
|
||||
if (model?.GetFiltersParsed() == null)
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
Expression outerExpression = null;
|
||||
var parameterExpression = Expression.Parameter(typeof(TEntity), "e");
|
||||
foreach (var filterTerm in model.FiltersParsed)
|
||||
foreach (var filterTerm in model.GetFiltersParsed())
|
||||
{
|
||||
Expression innerExpression = null;
|
||||
foreach (var filterTermName in filterTerm.Names)
|
||||
@ -281,13 +281,13 @@ namespace Sieve.Services
|
||||
IQueryable<TEntity> result,
|
||||
object[] dataForCustomMethods = null)
|
||||
{
|
||||
if (model?.SortsParsed == null)
|
||||
if (model?.GetSortsParsed() == null)
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
var useThenBy = false;
|
||||
foreach (var sortTerm in model.SortsParsed)
|
||||
foreach (var sortTerm in model.GetSortsParsed())
|
||||
{
|
||||
var property = GetSieveProperty<TEntity>(true, false, sortTerm.Name);
|
||||
|
||||
|
@ -148,9 +148,9 @@ namespace SieveUnitTests
|
||||
Filters = "LikeCount==50",
|
||||
};
|
||||
|
||||
Console.WriteLine(model.FiltersParsed[0].Value);
|
||||
Console.WriteLine(model.FiltersParsed[0].Operator);
|
||||
Console.WriteLine(model.FiltersParsed[0].OperatorParsed);
|
||||
Console.WriteLine(model.GetFiltersParsed()[0].Value);
|
||||
Console.WriteLine(model.GetFiltersParsed()[0].Operator);
|
||||
Console.WriteLine(model.GetFiltersParsed()[0].OperatorParsed);
|
||||
|
||||
var result = _processor.Apply(model, _posts);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user