मेरे पास नाम स्थान में कई स्थिर कक्षाएं हैं mySolution.Macros
जैसे कि
static class Indent{
public static void Run(){
// implementation
}
// other helper methods
}
तो मेरा सवाल यह है कि प्रतिबिंब की मदद से उन तरीकों को कॉल करना कैसे संभव होगा?
यदि विधियाँ जहाँ स्थिर नहीं हैं तो मैं कुछ कर सकता हूँ जैसे:
var macroClasses = Assembly.GetExecutingAssembly().GetTypes().Where( x => x.Namespace.ToUpper().Contains("MACRO") );
foreach (var tempClass in macroClasses)
{
var curInsance = Activator.CreateInstance(tempClass);
// I know have an instance of a macro and will be able to run it
// using reflection I will be able to run the method as:
curInsance.GetType().GetMethod("Run").Invoke(curInsance, null);
}
मैं अपनी कक्षाओं को स्थिर रखना चाहूंगा। मैं स्टैटिक तरीकों से कुछ ऐसा कैसे कर पाऊंगा?
संक्षेप में, मैं सभी स्थिर वर्गों से सभी रन विधियों को कॉल करना चाहूंगा जो नामस्थान mySolution.Macros में हैं।
GetMethod
।