2011-03-29 21 views
28

का उपयोग करके कक्षा विधियां प्राप्त करें, नीचे दिए गए तरीके में दिखाए गए अनुसार स्ट्रिंग के रूप में कक्षा नाम पारित होने पर मुझे प्रतिबिंब का उपयोग करके कक्षा के सभी सार्वजनिक तरीकों को कैसे प्राप्त किया जा सकता है। ?प्रतिबिंब

private MethodInfo[] GetObjectMethods(string selectedObjClass) 
{ 
    MethodInfo[] methodInfos; 
    Assembly assembly = Assembly.GetAssembly(typeof(sampleAdapater)); 
    Type _type = assembly.GetType("SampleSolution.Data.MyData." + selectedObjClass); 

    ///get all the methods for the classname passed as string 

    return methodInfos; 

} 

कृपया मदद करें। धन्यवाद

उत्तर

42
MethodInfo[] methodInfos = Type.GetType(selectedObjcClass) 
          .GetMethods(BindingFlags.Public | BindingFlags.Instance); 
7
// get all public static methods of given type(public would suffer in your case, only to show how you could other BindingFlags) 
MethodInfo[] methodInfos = _type.GetMethods(BindingFlags.Public | BindingFlags.Static); 

Type.GetMethods Method (BindingFlags)