वीबी 6 में वापस, मैंने कुछ फ़ंक्शंस लिखे जो मुझे नल और '' तारों के लिए अंतर, शून्य और संख्याओं के लिए 0) के बीच अंतर की देखभाल किए बिना कोड देने देगी। कुछ भी मेरी हत्या नहीं करता डेटा से निपटने के लिए विशेष केस कोड जोड़ने से कोडिंग करते समय उत्पादकता अधिक होती है जो कुछ अप्रासंगिक त्रुटि का कारण बन सकती है; 99 99/10000 यदि मैं किसी संख्या के रूप में उपयोग कर रहा हूं तो शून्य है, तो वास्तव में मैं इसे 0तारों से सुरक्षित रूपांतरण के लिए हेल्पर फ़ंक्शन
में अब मैं सी # में हूं, और वीबी 6 और सी # 2005 के बीच का अंतर काफी व्यापक है ... इसलिए मैं वास्तव में नहीं जानते कि मेरे नए सहायक कार्यों को कैसे लिखना शुरू करना है, या अगर मुझे उन्हें भी करने की ज़रूरत है।
तो, मुझे एक ऐसा फ़ंक्शन लिखना होगा जो एक स्ट्रिंग, डेटाबेस फ़ील्ड, एक अनुरोध फ़ॉर्म/क्वेरीस्टिंग फ़ील्ड, ??? स्वीकार करेगा, और उसके बाद इसे डबल में बदलने के लिए जो भी कर सकता है, उसे वापस कर दें कॉलिंग प्रक्रिया के लिए।
मुझे शॉर्ट्स, int16, int32, लंबे, अन्य सभी चीज़ों के लिए भी ऐसा करने की आवश्यकता होगी, जिनकी मैं संभवतः देखभाल कर सकता हूं।
तो मैं तारों के लिए ऐसा करूँगा। और तिथियां
क्या यह एक सार्थक प्रयास है? क्या ढांचे या सी # में कुछ ऐसा है जिसका मैं उपयोग कर सकता हूं? मुझे वास्तव में ऐसा कुछ चाहिए जो मुझे अन्य कार्यों को कॉल करने में डेटा इनलाइन का उपयोग करने की अनुमति दे, और अस्थायी चर बनाने की इजाजत न दे।
मैं वास्तव में जेनरिक के उपयोग के लिए यह एक और कैसे है कि बचा सकता है मुझे तरीकों के दसियों बनाने की तरह की तरह कहते हैं। धन्यवाद! –
यह बहुत अच्छा है, लेकिन अगर हम गतिशील रूप से रूपांतरित करने के लिए प्रकार प्राप्त कर रहे हैं तो हम डिफ़ॉल्ट मूल्य के रूप में क्या पास करेंगे? – Naomi
मुझे लगता है कि TryParse सबसे अच्छा है। यह SafeConvert ("शून्य", 0) == 0 परिवर्तित नहीं कर सकता; –