Controllo campo DateTime Null in SQL Server

giovedì 17 maggio 2007 - 14.51

e.disanto Profilo | Junior Member

Salve ragazzi,
ho un dataset e, per ogni record del dataset, devo controllare un certo campo di tipo DateTime, in base al suo contenuto fare determinate operazioni.
Il problema è che il contenuto potrebbe anche essere vuoto (NULL), per cui è necessario effettuare un controllo all'inizio del ciclo che ripeto per ogni record che mi controlli il contenuto di questo campo DateTime.
Come posso effettuare il controllo senza che il programma mi dia errore nel momento in cui trova una data Null?
Il controllo è questo:

If dr.DataArrivo <> "" And dr.DataSpedizione <> "" Then
...

L'eccezione restituita è la seguente:
System.Data.StrongTypingException: The value for column 'DataSpedizione' in table 'SPEDIZIONI' is DBNull.
---> System.InvalidCastException: Cast non valido dal tipo 'DBNull' al tipo 'Date'.

Premetto che ho provato anche con DBNull.Value ma sempre lo stesso (con errori diversi)...

Grazie in anticipo.

Ernesto di Santo

AndreaKpr Profilo | Senior Member

Potesti già nella query che utilizzi per popolare il dataset usare la "isnull" di sql e sostiture il null con una data di riferimento.

Oppure testi il campo null, nel codice C#

ti passo una funzione che potebbe faer al caso tuo ...


public static DateTime ConvertiInDateTime(Object Valore)
{
if (Valore != DBNull.Value)
return Convert.ToDateTime(Valore);
else
return DateTime.MinValue;
}

Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5