如何过滤绑定源连接到linq查询



我有一个sql表"Activity",其中包括。id,。activ_code,。name,。start,。end

Dim BS as BindingSource
Dim DGView as Datagridview

BS.Datasource=(From x in Dbase.Activity select x)
BS.Filter="Activ_Code=3"
DGView.datasource=BS

显示了"Activity"表中的所有字段。我改变了过滤器属性为"Activ_Code='3'"one_answers"Activ_Code LIKE 3",但它们都不工作。

From MSDN:

只有实现了IBindingListView接口的底层列表才支持过滤。

数据源只是一个IEnumerable。您必须在LINQ查询本身中进行过滤。例如:

Dim mainList = (From x in Dbase.Activity select x).ToList
BS.Datasource=(From x in mainList.Where(...) select x)

并在点处放置过滤器。每次将数据源设置为新的过滤列表时,列表中的对象不会受到影响,因为它们不会从数据库中重新获取。

相关内容

  • 没有找到相关文章