TypeBuilder::DefineNestedType Method (String, TypeAttributes, Type, array<Type>)
Defines a nested type, given its name, attributes, the type that it extends, and the interfaces that it implements.
Assembly: mscorlib (in mscorlib.dll)
[ComVisibleAttribute(true)] public: TypeBuilder^ DefineNestedType( String^ name, TypeAttributes attr, Type^ parent, array<Type^>^ interfaces )
- Type: System::String
The short name of the type. name cannot contain embedded nulls.
- Type: System.Reflection::TypeAttributes
The attributes of the type.
- Type: System::Type
The type that the nested type extends.
- Type: array<System::Type>
The interfaces that the nested type implements.
Return ValueType: System.Reflection.Emit::TypeBuilder
The defined nested type.
The nested attribute is not specified.
This type is sealed.
This type is an array.
This type is an interface, but the nested type is not an interface.
The length of name is zero or greater than 1023.
This operation would create a type with a duplicate FullName in the current assembly.
name is nullptr.
An element of the interfaces array is nullptr.
This method can be used to create nested types even after the CreateType method has been called on the enclosing type.
See the description of CreateType for the order in which nested types and nesting types should be completed.
A duplicate name is not necessarily created if name is identical to the name of a previously defined type or nested type. To be duplicates, the full names must be the same, including the namespace and all nesting types.
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.