What is Reflection ? What is the support for Reflection in .Net ?

 
 

The metadata of any .net assembly can be inspected at runtime for its type, method, properties, and events and so on. The mechanism to do this is termed as reflection and there are classes in .net which enable you to do so. 
One can determine all classes that an assembly contains, members exposed by these classes, parameters the members expect, etc. The classes that enable you to do so reside in the System.Reflection namespace.
An object’s metadata is accessed through its Type class which is retrieved using the GetType() method. 
Type T = MyClass.GetType ();
One you have the type you can access it to get all other information of the class.