public async Task OnFiltering(FilteringEventArgs args)
{
args.PreventDefaultAction = true;
string[] subs;
var pre = new WhereFilter();
var predicate = new List<WhereFilter>();
if(args.Text.Contains(" "))
{
subs = args.Text.Split(' ');
foreach (string value in subs)
{
predicate.Add(new WhereFilter() { Condition = "and", Field = "Text", value = value, Operator = "contains", IgnoreAccent = true, IgnoreCase = true });
}
pre = WhereFilter.And(predicate);
query = new Query().Where(pre);
}
else
{
query = new Query().Where("Text", "contains", args.Text,true,true);
}
await this.autoObj.Filter(LocalData, query);
} |