Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

Reflection and Generic Types

From the point of view of reflection, the difference between a generic type and an ordinary type is that a generic type has a set of type parameters (if it is a generic type definition) or type arguments (if it is a constructed type). A generic method differs from an ordinary method in the same way.

The problem in reflection is to provide a way to examine this array of type parameters or type arguments. In the case of type parameters, reflection must also provide a way of examining the constraints. This section describes the methods of the Type and MethodInfo classes that provide the ability to examine generic types and methods.

Overview of Reflection and Generics

Explains the two key things you need to know to understand reflection over generic types and methods, and introduces the most important properties and methods that unlock generics.

How to: Examine and Instantiate Generic Types with Reflection

Shows how to use the properties and methods of Type and MethodInfo to examine generic types.

Type.IsGenericType

Provides a table of invariants for the terms used to discuss generic types and methods.

MethodInfo.IsGenericMethod

Provides a table of invariants for the terms used to discuss generic methods.

Generics Overview

Describes the generics feature and introduces terminology for talking about generics.

How to: Define a Generic Type with Reflection Emit

Shows how to use reflection emit to generate generic types in dynamic assemblies.

Viewing Type Information

Describes the Type class and provides code examples that illustrate how to use Type with various reflection classes to obtain information about constructors, methods, fields, properties, and events.

Community Additions

Show:
© 2014 Microsoft