2012-04-26 18 views
6

Come posso verificare se uno DataTable non è mai stato impostato, ovvero sarà Null o Nothing? Non intendo un vuoto DataTable.Come verificare se un Datatable è Null o Nothing

Ad esempio:

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

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

Se Session("dt") non è mai stata impostata o si perde in memoria per qualche ragione, dt.Rows.Count <> 0 getteranno questa eccezione:

riferimento oggetto non impostato a un'istanza di un oggetto.

+0

Per chiunque altro trovare questo e vuole saperne di più controllare le risposte a [cosa è un NullReferenceException, e come posso risolvere il problema ?] (http://stackoverflow.com/questions/4660142/what-is-a-nullreferenceexception-and-how-do-i-fix-it) – Bugs

risposta

12

preferita:

If dt Is Nothing Then ... 

o (VB6 simili)

If IsNothing(dt) Then ... 

IsNothing Function

+0

hehe ... ovviamente .. perché ero così sciocco solo ora ... Grazie ..: D – lawphotog

+5

@LaurenceNyein la tua sciocchezza mi è stata d'aiuto :) –

0

Se il valore tipo di dati è varbinary (MAX), utilizzare

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

Per favore rileggi la domanda. Richiede esplicitamente di verificare quando un 'DataTable' non è stato impostato. Ciò significa che il tuo codice fallirà. – Bugs

Problemi correlati