2012-07-11 9 views
7

मेरी कक्षा में मैं इन setters/टिककर खेल है:डेटाबेस से शून्य मूल्यों के आसपास वर्ग कैसे डिजाइन करें?

public int Id { get; set; } 
public String ProjectName { get; set; } 
public String ProjectType { get; set; } 
public String Description { get; set; } 
public String Status { get; set; } 
public DateTime StartDate { get; set; } 

दिनांक समय गैर-व्यर्थ प्रकार है। इसलिए, जब मैं अपने विरासत डेटाबेस से अपना डेटा पुनर्प्राप्त करता हूं जिसे मैं कक्षा कन्स्ट्रक्टर को पास करता हूं, तो स्टार्टडेट शून्य होने पर मुझे एक त्रुटि मिलती है।

मुझे इस बारे में डिजाइन करने के बारे में कैसे जाना चाहिए?

धन्यवाद एरिक

उत्तर

14

आप किसी भी struct नल .NET 2.0 के साथ शुरू कर सकते हैं।

public DateTime? StartDate { get; set; } 

? पर ध्यान दें। Nullable<DateTime> बनाने के लिए यह एक कंपाइलर ऑपरेटर है।

जब यह पाठक से बाहर खींच, तो आप इस

obj.StartDate = reader["StartDate"] as DateTime?; 

कर सकते हैं यहां नल प्रकार पर कुछ और जानकारी है: http://www.codeproject.com/Articles/275471/Nullable-Types-in-Csharp-Net

+0

@NominSim नहीं आप करते हैं। 'डेटटाइम' एक मान प्रकार है। –

+0

हूप्स। आप सही हे। – NominSim

+0

@ डैनियलए। व्हाइट ['Nullable 'भी एक मान प्रकार है] (http://msdn.microsoft.com/en-us/library/b3h38hb0.aspx), लेकिन इसके साथ उपयोग करने के लिए कुछ विशेष गिबिन चलाना चाहिए इस तरह के रूप में, संभवतः एक ही gubbins जो आपको 'शून्य' असाइन करने की अनुमति देता है। –

संबंधित मुद्दे