View Single Post
Old 11-02-2008, 15:17   #2
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Cittā: Londra (Torino)
Messaggi: 3692
in VB.net (come anche in C#.net) il tipo DateTime e' di tipo value.
Quindi non puo' accettare NULL come valore.

Ci sono un po' di soluzioni:
- Forzi gia' sul database il campo ad essere NOT NULL, e decidi qual e' la data che considererai come NULL (ES: 1/1/1970, data assolutamente a caso).
- Ogni volta che leggi un record con quella data allora dovrai tenere conto che puo' essere NULL, e il tuo dato restituito dovra' essere processato lato VB.net nella lettura. Valore consigliato lato VB.net e' default(DateTime);
- Ogni volta che leggi un record con quella data allora dovrai tenere conto che puo' essere NULL, e il tuo dato restituito dovra' essere processato lato SQL nello statment.
(Select ....., ISNULL( miadata, '1/1/1970' ) as datacucinata FROM ....)
- Altro?

Ovviamente gli inserimenti e gli aggiornamento dovranno tenere conto della soluzione da te scelta.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX č offline   Rispondi citando il messaggio o parte di esso