如果要在查询中应用多个条件,可以使用WhereFilter生成谓词,然后将生成的谓词传递给网格查询属性,以在网格中执行过滤操作。请参阅下面的代码片段和文档供您参考。
<SfButton Content="Apply Filter" OnClick="Filter"></SfButton><SfButton Content="Clear Filter" OnClick="ClearFilter"></SfButton><SfGrid DataSource="@Orders" Query="@QueryData" AllowPaging="true">
@code {
public List<Order> Orders { get; set; }
public Query QueryData { get; set; } = new Query();
public void Filter()
{
var Col1Pre = new WhereFilter();
var predicate = new List<WhereFilter>();
predicate.Add(new WhereFilter() { Field = "Freight", value = 2, Operator = "greaterthanorequal" });
predicate.Add(new WhereFilter() { Field = "Freight", value = 15, Operator = "lessthanorequal" });
Col1Pre = WhereFilter.And(predicate);
QueryData = new Query().Where(Col1Pre);
}
public void ClearFilter()
{
QueryData = new Query();
}
参考: https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Data.WhereFilter.html https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Data.WhereFilter.html#Syncfusion_Blazor_Data_WhereFilter_And_Syncfusion_Blazor_Data_WhereFilter_ https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Data.WhereFilter.html#Syncfusion_Blazor_Data_WhereFilter_Or_Syncfusion_Blazor_Data_WhereFilter_