| |
|
What is Reflection in .NET?
Reflection - The process of getting the metadata from modules/assemblies. When .NET
code is compiled, metadata about the types defined in the modules is produced. These modules
are in turn packaged as assemblied. The process of accessing this metadata in called Reflection.
The namespace System.Reflection contains classes that can be used for interrogating the types for a
module/assembly. We use reflection for examining data type sizes for marshalling across process &
machine boundaries.
Reflection is also used for:
1) To dynamically invoke methods (using System.Type.InvokeMember)
2) To dynamically create types at runtime (using System.Reflection.Emit.TypeBuilder).
.NET
Languages
Versions
Tools
CLI CTS Metadata CLS IL VES
CLR
Class Library
Managed Class
Assembly ILDASM
Reflection
Assembly Types
Strong Assembly
GAC
GC
IDisposable
Serialization
Code Access Security
Attribute
Thread
Globalization
Generations
COM
| |