Type.IsGenericTypeDefinition Property
Gets a value indicating whether the current Type represents a generic type definition, from which other generic types can be constructed.
Assembly: mscorlib (in mscorlib.dll)
A generic type definition is a template from which other types can be constructed. For example, from the generic type definition G<T> (expressed in C# syntax; G(Of T) in Visual Basic or generic <typename T> ref class G in C++) you can construct and instantiate the type G<int> (G(Of Integer) in Visual Basic), by calling the MakeGenericType method with a generic argument list containing the Int32 type. Given a Type object representing this constructed type, the GetGenericTypeDefinition method gets the generic type definition back again.
Use the IsGenericTypeDefinition property to determine whether you can create new types from the current type. If the IsGenericTypeDefinition property returns true, you can call the MakeGenericType method to create new generic types.
For a list of the invariant conditions for terms used in generic reflection, see the IsGenericType property remarks.
The following example displays information about a type, including whether or not it is a generic type definition. Information is displayed for a constructed type, for its generic type definition, and for an ordinary type.
Available since 2.0
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0