Reflection 

The classes in the System.Reflection namespace, together with System.Type, allow you to obtain information about loaded assemblies and the types defined within them, such as classes, interfaces, and value types. You can also use reflection to create type instances at run time, and to invoke and access them.

In This Section

  • Viewing Type Information
    Describes the System.Type class and provides code examples that illustrate how to use System.Type with several reflection classes to obtain information about constructors, methods, fields, properties, and events.
  • Accessing Default Argument Values
    Demonstrates how to use reflection to access arguments that have default values, and how to invoke methods that have arguments with default values.
  • Specifying Fully Qualified Type Names
    Describes the format of fully qualified type names in terms of the Backus-Naur form (BNF), and the syntax required for specifying special characters, assembly names, pointers, references, and arrays.

Reference

  • Type
    The class that represents types in the runtime type system and provides core functionality for reflection.
  • System.Reflection
    The namespace that contains other abstractions for code entities, such as the MethodInfo class that represents methods.
  • System.Reflection.Emit
    The namespace that contains classes for generating dynamic assemblies and dynamic methods.