2009-09-07 56 views
9

Bạn có thể sử dụng thuộc tính Bộ lọc của một BindingSource để thực hiện SQL như lọc. Ví dụ:.NET BindingSource Tham khảo cú pháp bộ lọc

bindingSource.Filter= "Activated = 1" 

Có cái gì đó như tài liệu hướng dẫn về cú pháp chính xác về điều này?

Tôi muốn kiểm tra xem một trường không phải là DBNull, vì vậy tôi đã thử "Field! = NULL" nhưng nó đưa ra lỗi cú pháp.

Trả lời

11

Cú pháp nói chung là giống như những gì sẽ bạn sẽ sử dụng trong một SQL ở đâu điều khoản, nếu không có sự "ở đâu", vì vậy trong trường hợp này, nó sẽ là

bindingSource.Filter = "Field <> NULL"; 

Nếu bạn nhìn vào tài liệu MSDN cho BindingSource.Filter bạn sẽ thấy điều này:

"Để tạo thành giá trị bộ lọc, hãy chỉ định tên của cột, theo sau là toán tử và giá trị cần lọc. Cú pháp lọc được chấp nhận phụ thuộc vào nguồn dữ liệu cơ bản. nguồn dữ liệu là một DataSet, DataTable hoặc DataView, bạn có thể chỉ định các biểu thức Boolean usin g cú pháp được ghi lại cho thuộc tính DataColumn..::.Expression. "

theo liên kết đó để xem tất cả các quy tắc chi tiết

0

Khi Lọc không phải là NULL một tham chiếu null , BindingSource chuyển thuộc tính này vào danh sách cơ bản

Nếu bạn bị ràng buộc vào một DataTable hoặc một DataView, cú pháp sẽ là một tài sản có sẵn tại DataColumn.Expression Property.

2

gì làm việc cho tôi là

bindingSource.Filter = "columnName Is Null"; 

hoặc ngược lại

bindingSource.Filter = "columnName Is Not Null"; 
Các vấn đề liên quan