मैं एक MethodInfo एक समारोह में पारित किया है की एक सामान्य उदाहरण है और मैं निम्नलिखितमैं कैसे तय करते हैं कि एक विधि एक सामान्य विधि
MethodInfo containsMethod = typeof(ICollection<>).GetMethod("Contains");
if (methodInfo.Equals(containsMethod)
{
// do something
}
क्या करना चाहते हैं लेकिन यह क्योंकि MethodInfo काम नहीं करता है एक विशिष्ट सामान्य प्रकार है। उदाहरण के लिए काम करता है अगर मुझे पता था कि आईसीओलेक्शन हमेशा स्ट्रिंग प्रकार का था।
MethodInfo containsMethod = typeof(ICollection<string>).GetMethod("Contains");
if (methodInfo.Equals(containsMethod)
{
// do something
}
मैं कैसे जांच कर सकते हैं कि क्या MethodInfo एक किसी भी देखभाल किस प्रकार है बिना सामान्य विधि का उदाहरण आपके द्वारा लिखा गया है?
धन्यवाद।
संपादित करें: प्रश्न स्पष्टीकरण
के रूप में सही ढंग से बताया विधि सामान्य नहीं है, लेकिन युक्त वर्ग इतना है सवाल यह है कि अधिक मैं कैसे पता लगाने के लिए अगर MethodInfo एक प्रकार जो ICollection के द्वारा लिखे गए उदाहरण है के लिए है <>।
संपादित करें: अधिक संदर्भ
मैं एक Linq प्रदाता लिख रहा हूँ और संभाल करने के लिए मामले "में"
IList<string> myList = new List<string>{ "1", "2" };
from Something s in ...
where myList.Contains(s.name)
select s;
सरल और स्पष्ट आईएमओ, धन्यवाद। –