.NET BindingSource Filter syntax reference

2019-04-21 08:19发布

You can use the Filter property of a BindingSource to do SQL like filtering. For example:

bindingSource.Filter= "Activated = 1"

Is there something like documentation on the exact syntax of this?

I would like to check if a field is not DBNull, so i tried "Field != NULL" but it gives a syntax error.

4条回答
走好不送
2楼-- · 2019-04-21 09:02

The syntax is generally the same as what would you would use in a SQL Where clause, without the "Where", so in this case, it would be

  bindingSource.Filter = "Field <> NULL";

If you look at msdn docs for BindingSource.Filter you will see this:

"To form a filter value, specify the name of a column followed by an operator and a value to filter on. The accepted filter syntax depends on the underlying data source. If the underlying data source is a DataSet, DataTable, or DataView, you can specify Boolean expressions using the syntax documented for the DataColumn..::.Expression property."

Follow that link to see all the detailed rules

查看更多
做自己的国王
3楼-- · 2019-04-21 09:06

What worked for me was

bindingSource.Filter = "columnName Is Null";

or conversely

bindingSource.Filter = "columnName Is Not Null";
查看更多
The star\"
4楼-- · 2019-04-21 09:09

When Filter is not null a null reference, the BindingSource passes this property to the underlying list.

If you're bound to a DataTable or a DataView, the syntax would be the one available at DataColumn.Expression Property.

查看更多
我命由我不由天
5楼-- · 2019-04-21 09:25

Have a look at this msdn article. The described syntax should be valid for your BindingSource, too.

查看更多
登录 后发表回答