2012-04-26 53 views
6

Làm cách nào để kiểm tra xem DataTable chưa bao giờ được đặt, có nghĩa là nó sẽ là Null hoặc Nothing? Tôi không có nghĩa là trống DataTable.Làm thế nào để kiểm tra xem một Datatable là Null hoặc Không có gì

Ví dụ:

Dim dt As DataTable = TryCast(Session("dt"), DataTable) 

If dt.Rows.Count <> 0 Then 
    'Do something ! 
End If 

Nếu Session("dt") chưa bao giờ được thiết lập hoặc bị mất trong ký ức đối với một số lý do, dt.Rows.Count <> 0 sẽ ném ngoại lệ này:

Object tài liệu tham khảo không được đặt để một thể hiện của một vật.

+0

Đối với bất cứ ai khác tìm này và muốn biết thêm kiểm tra câu trả lời tại [một NullReferenceException là gì, và làm thế nào để sửa chữa nó ?] (http://stackoverflow.com/questions/4660142/what-is-a-nullreferenceexception-and-how-do-i-fix-it) – Bugs

Trả lời

12

ưa thích:

If dt Is Nothing Then ... 

hoặc (VB6 như)

If IsNothing(dt) Then ... 

IsNothing Function

+0

hehe ... tất nhiên .. tại sao tôi lại quá ngớ ngẩn chỉ bây giờ ... Cảm ơn ..: D – lawphotog

+5

@LaurenceNyein ngớ ngẩn của bạn đã chứng tỏ hữu ích cho tôi :) –

0

Nếu datatype giá trị là varbinary (MAX), sử dụng

if dt.rows(0).item(2) Is DBNull.Value then... 
+0

Vui lòng đọc lại câu hỏi. Nó yêu cầu kiểm tra khi một 'DataTable' chưa được thiết lập. Điều đó có nghĩa là mã của bạn sẽ không thành công. – Bugs

Các vấn đề liên quan