Mega Code Archive

 
Categories / C# / Reflection
 

BindingFlags NonPublicBindingFlags InstanceBindingFlags DeclaredOnly

using System; using System.Reflection; using System.Reflection.Emit; public class MyTypeClass {     public void MyMethods()     {     }     public int MyMethods1()      {         return 3;     }     protected String MyMethods2()     {         return "hello";     } } public class TypeMain {     public static void Main()      {         Type myType =(typeof(MyTypeClass));         // Get the nonpublic methods.         MethodInfo[] myArrayMethodInfo1 = myType.GetMethods(BindingFlags.NonPublic|BindingFlags.Instance|BindingFlags.DeclaredOnly);         Console.WriteLine("\nThe number of protected methods is {0}.", myArrayMethodInfo1.Length);         // Display information for all methods.         DisplayMethodInfo(myArrayMethodInfo1);         }     public static void DisplayMethodInfo(MethodInfo[] myArrayMethodInfo)     {         for(int i=0;i<myArrayMethodInfo.Length;i++)         {             MethodInfo myMethodInfo = (MethodInfo)myArrayMethodInfo[i];             Console.WriteLine("\nThe name of the method is {0}.", myMethodInfo.Name);         }     } }