This documentation is archived and is not being maintained.

TypeBuilder.SetParent Method

Sets the base type of the type currently under construction.

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

public void SetParent (
	Type parent
public void SetParent (
	Type parent
public function SetParent (
	parent : Type
Not applicable.



The new base type.

Exception typeCondition


The type was previously created using CreateType.


parent is a null reference (Nothing in Visual Basic), and the current instance represents an interface whose attributes do not include Abstract.


For the current dynamic type, the IsGenericType property is true, but the IsGenericTypeDefinition property is false.


parent is an interface. This exception condition is new in the .NET Framework version 2.0.

If parent is a null reference (Nothing in Visual Basic), Object is used as the base type.

In the .NET Framework versions 1.0 and 1.1, no exception is thrown if parent is an interface type, but a TypeLoadException is thrown when the CreateType method is called.

The SetParent method does not check for most invalid parent types. For example, it does not reject a parent type that has no default constructor when the current type has a default constructor, it does not reject sealed types, and it does not reject the Delegate type. In all these cases, exceptions are thrown by the CreateType method.

Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0