मेरे पास एक सामान्य विधि है जो एक अनुरोध लेती है और एक प्रतिक्रिया प्रदान करती है।सी # जेनेरिक में शून्य?
public Tres DoSomething<Tres, Treq>(Tres response, Treq request)
{/*stuff*/}
लेकिन मैं हमेशा अपने अनुरोध के लिए प्रतिक्रिया नहीं चाहता हूं, और मैं हमेशा प्रतिक्रिया प्राप्त करने के लिए अनुरोध डेटा नहीं चाहता हूं। मैं मामूली परिवर्तन करने के लिए पूरी तरह से विधियों की प्रतिलिपि बनाना और पेस्ट नहीं करना चाहता हूं। मैं जो चाहता हूं, वह ऐसा करने में सक्षम होना है:
public Tre DoSomething<Tres>(Tres response)
{
return DoSomething<Tres, void>(response, null);
}
क्या यह किसी भी तरह से व्यवहार्य है? ऐसा लगता है कि विशेष रूप से शून्य का उपयोग करना काम नहीं करता है, लेकिन मैं कुछ समान खोजने की उम्मीद कर रहा हूं।
क्यों न केवल System.Object का उपयोग करें और DoSomething (Tres प्रतिक्रिया, ट्रेक अनुरोध) में एक शून्य जांच करें? – James
ध्यान दें कि आपको वापसी मूल्य का उपयोग करने की आवश्यकता है। आप प्रक्रियाओं जैसे कार्यों को कॉल कर सकते हैं। 'कुछ = (x); 'y = doSomething (x);' –