मैंने अपने .NET ऐप में दृढ़ता से टाइप किया गया डेटासेट (MyDataSet) बनाया है। सादगी के लिए, हम कहेंगे कि इसमें एक डेटाटेबल (MyDataTable) है, जिसमें एक कॉलम (MyCol) है। MyCol की डेटाटाइप संपत्ति "System.Int32" पर सेट है, और इसकी AllowDBNull प्रॉपर्टी "सत्य" पर सेट है।मैं अपने दृढ़ टाइप किए गए डेटासेट में मूल्य के रूप में डीबीएनयूएल को कैसे शामिल कर सकता हूं?
मैं मैन्युअल रूप से एक नई पंक्ति बनाना चाहता हूं, और इसे इस डेटासेट में जोड़ना चाहता हूं। मैं किसी समस्या के बिना पंक्ति बना देता हूं, जैसे कुछ:
MyDataSet.MyDataTableRow myRow = MySimpleDataSet.MyDataTable.NewItemRow();
ठीक है। हालांकि, जब मैं DBNull के लिए मूल्य सेट करने का प्रयास:
myRow.MyCol = DBNull.Value;
मुझे बताया गया हूँ कि मैं यह नहीं कर सकते ... यह है कि यह किसी पूर्णांक पर कि डाली नहीं कर सकता। यह समझ में आता है, एक तरह से, क्योंकि मैंने इसे एक int होने के लिए परिभाषित किया है ... लेकिन फिर मैं वहां डीबीएन कैसे प्राप्त कर सकता हूं? क्या मुझे वहां डीबीएनयूएल नहीं मिलनी चाहिए? क्या यह नहीं है कि AllowDBNull संपत्ति के लिए क्या है?
मुझे स्पष्ट रूप से कुछ मौलिक याद आ रही है। क्या कोई यह समझाने में मदद कर सकता है कि यह क्या है?
संपादित करें: मैंने "int?" दर्ज करने का भी प्रयास किया डेटाटाइप के रूप में, लेकिन जब मैं इसे दर्ज करता हूं तो विजुअल स्टूडियो एक त्रुटि फेंकता है, कह रहा है कि "कॉलम को एक वैध डेटा टाइप की आवश्यकता है।"
इससे मदद मिल सकती है: http://stackoverflow.com/questions/879095/nullable-int-column-in- डेटासेट –