नहीं, आप जो मांग रहे हैं वह C# में संभव नहीं है।
इसके बजाय इस समस्या का उचित समाधान बेहतर पार्सिंग विधियों का उपयोग करना है जो पहले स्थान पर अपवाद नहीं फेंकेंगे। यदि आपके इनपुट मान शून्य हो सकते हैं, तो पार्सिंग विधियों का उपयोग करें जो शून्य मान स्वीकार कर सकते हैं।
पहली चीज जो आपको शायद करने की ज़रूरत है वह आपके int/bool फ़ील्ड के लिए शून्य प्रकार का उपयोग करती है, ताकि आप शून्य मानों का समर्थन कर सकें। इसके बाद, आपको अपने इनट्स/बूल को पार्स करने के लिए अपनी खुद की विधियां बनाने की आवश्यकता होगी। यदि आपका इनपुट शून्य है, तो शून्य लौटें, यदि नहीं, तो int.TryParse
. का उपयोग करें , bool.TryParse
(या as
प्रत्येक के लिए यदि आपका इनपुट उचित प्रकार का है, तो बस object
पर कास्ट करें )।
फिर उन तरीकों का उपयोग करके Convert
. के बजाय , आप पहली जगह में अपवाद नहीं फेंकेंगे (जो आपको यहां काम नहीं करना चाहिए, भले ही यह काम कर सके, क्योंकि अपवाद असाधारण मामलों के लिए हैं, अपेक्षित नियंत्रण प्रवाह नहीं)।