TypeBuilder.DefineNestedType Method (String, TypeAttributes)

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Defines a nested type, given its name and attributes.

Namespace:   System.Reflection.Emit
Assembly:  mscorlib (in mscorlib.dll)

public TypeBuilder DefineNestedType(
	string name,
	TypeAttributes attr
)

Parameters

name
Type: System.String

The short name of the type. name cannot contain embedded nulls.

attr
Type: System.Reflection.TypeAttributes

The attributes of the type.

Return Value

Type: System.Reflection.Emit.TypeBuilder

The defined nested type.

Exception Condition
ArgumentException

The nested attribute is not specified.

-or-

This type is sealed.

-or-

This type is an array.

-or-

This type is an interface, but the nested type is not an interface.

-or-

The length of name is zero or greater than 1023.

-or-

This operation would create a type with a duplicate FullName in the current assembly.

ArgumentNullException

name is null.

This method can be used to create nested types even after the CreateType method has been called on the enclosing type.

The nested type needs to be complete before you can reflect on it using GetMembers, GetNestedType, or GetNestedTypes.

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.

.NET Framework
Available since 1.1
Silverlight
Available since 2.0
Return to top
Show: