.NET BindingSource过滤器语法参考

时间:2009-09-07 15:15:29

标签: c# .net filter bindingsource

您可以使用BindingSource的Filter属性来执行类似过滤的SQL。 例如:

bindingSource.Filter= "Activated = 1"

是否有类似文档的确切语法?

我想检查一个字段是否不是DBNull,所以我尝试了“Field!= NULL”但它给出了语法错误。

4 个答案:

答案 0 :(得分:11)

语法通常与在SQL Where子句中使用的语法相同,没有“Where”,因此在这种情况下,它将是

  bindingSource.Filter = "Field <> NULL";

如果你看一下BindingSource.Filter的msdn docs,你会看到:

“要形成过滤器值,请指定列的名称,后跟运算符和要过滤的值。接受的过滤器语法取决于基础数据源。如果基础数据源是DataSet,DataTable或在DataView中,您可以使用为DataColumn..::.Expression属性记录的语法指定布尔表达式

按照该链接查看所有详细规则

答案 1 :(得分:4)

看看this msdn article。所描述的语法也适用于您的BindingSource

答案 2 :(得分:2)

对我有用的是

bindingSource.Filter = "columnName Is Null";

或相反

bindingSource.Filter = "columnName Is Not Null";

答案 3 :(得分:0)

当Filter不为null引用时,BindingSource将此属性传递给基础列表。

如果您绑定到DataTable或DataView,则语法将是DataColumn.Expression Property处的语法。