How to filter on more than one data field in Blazor Autocomplete

Answer:

In Autocomplete to filter the value using more than one fields, We can suggest using the predicate of DataManager. Please refer to the below code,

public async Task OnFiltering(FilteringEventArgs args)

{

args.PreventDefaultAction = true;

var pre = new WhereFilter();

var predicate = new List();

predicate.Add(new WhereFilter() { Condition = "or", Field = "CustomerID", value = args.Text, Operator = "startswith", IgnoreAccent = true, IgnoreCase = true });

predicate.Add(new WhereFilter() { Condition = "or", Field = "OrderID", value = args.Text, Operator = "startswith", IgnoreAccent = true, IgnoreCase = true });

pre = WhereFilter.Or(predicate);

var query = new Query().Where(pre).Take(5);

await this.autoObj.Filter(null, query);

}

Find the sample to filter on more than one data field in Autocomplete from here.



2 Replies

GG Greg Gum June 14, 2022 07:27 PM UTC

Here is another sample:

 private void OnFilter(FilteringEventArgs args)

        {

            args.PreventDefaultAction = true;


            var predicate = new List<WhereFilter>();


            predicate.Add(new WhereFilter() { Condition = "or", Field = "Code", Operator = "StartsWith", value = "0" });

            predicate.Add(new WhereFilter() { Condition = "or", Field = "RoutingNumber", Operator = "StartsWith", value = args.Text });


            var whereFilter = WhereFilter.Or(predicate);


            var query = new Query().Where(whereFilter).Take(10);


            this.RoutingNumberAutocomplete.Filter(this.StandardAchDirectories, query);

        }



SP Sureshkumar P Syncfusion Team June 15, 2022 06:42 AM UTC

Greg,


Thanks for your update.


Regards,

Sureshkumar P



Loader.
Up arrow icon