2009-03-13 4 views
2

Ich möchte einen Nullwert für eine DateTime-Variable in C# übergeben. Der Wert sollte in der Datenbank als Null gespeichert werden.DateTime Variable

Ich habe versucht mit Datetime.Minvalue, aber das speichert einen Standardwert. Es muss eine Null in der Datenbank sein. Wie mache ich das?

Antwort

10

Verwenden DateTime? wie in

DateTime? foo = null; 

Das ist ein nullableDateTime macht:

A NULL festlegbaren Typ für seine Basiswert Typ der normalen Wertebereich darstellen kann, plus eine zusätzlicher Nullwert.

dann, wenn der Wert aus schreiben, können Sie den Wert wie folgt verwenden:

if(foo == null) 
{ 
    // Handle the null case 
} 
else 
{ 
    // Handle the non-null case 
} 
1

Sie DateTime? Werte Typ verwenden könnten. Es kann null Werte haben, aber ansonsten ist es ganz gleich wie DateTime

+0

ah Sie sind ein paar Sekunden zu spät. – Sung

+0

@Sung: Schnellste Waffe im Westen-Syndrom: -/ –

+0

@Daniel: Als ich die Seite aktualisiert, Timestamp sagte, 2 Sekunden, aber ich sah bereits 2 Antworten – Sung

5

ich mit dem Nullable Type Antwort zustimmen, aber wenn man es in die Datenbank zu schreiben, gehen, müssen Sie noch für null testen und wandeln es in DBNull.Value .