This documentation is archived and is not being maintained.

TypeBuilder.DefineConstructor Method (MethodAttributes, CallingConventions, Type[], Type[][], Type[][])

Adds a new constructor to the type, with the given attributes, signature, and custom modifiers.

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

[ComVisibleAttribute(true)] 
public ConstructorBuilder DefineConstructor (
	MethodAttributes attributes,
	CallingConventions callingConvention,
	Type[] parameterTypes,
	Type[][] requiredCustomModifiers,
	Type[][] optionalCustomModifiers
)
/** @attribute ComVisibleAttribute(true) */ 
public ConstructorBuilder DefineConstructor (
	MethodAttributes attributes, 
	CallingConventions callingConvention, 
	Type[] parameterTypes, 
	Type[][] requiredCustomModifiers, 
	Type[][] optionalCustomModifiers
)
ComVisibleAttribute(true) 
public function DefineConstructor (
	attributes : MethodAttributes, 
	callingConvention : CallingConventions, 
	parameterTypes : Type[], 
	requiredCustomModifiers : Type[][], 
	optionalCustomModifiers : Type[][]
) : ConstructorBuilder
Not applicable.

Parameters

attributes

The attributes of the constructor.

callingConvention

The calling convention of the constructor.

parameterTypes

The parameter types of the constructor.

requiredCustomModifiers

An array of arrays of types. Each array of types represents the required custom modifiers for the corresponding parameter, such as IsConst. If a particular parameter has no required custom modifiers, specify a null reference (Nothing in Visual Basic) instead of an array of types. If none of the parameters have required custom modifiers, specify a null reference (Nothing in Visual Basic) instead of an array of arrays.

optionalCustomModifiers

An array of arrays of types. Each array of types represents the optional custom modifiers for the corresponding parameter, such as IsConst. If a particular parameter has no optional custom modifiers, specify a null reference (Nothing in Visual Basic) instead of an array of types. If none of the parameters have optional custom modifiers, specify a null reference (Nothing in Visual Basic) instead of an array of arrays.

Return Value

The defined constructor.

Exception typeCondition

ArgumentException

The size of requiredCustomModifiers or optionalCustomModifiers does not equal the size of parameterTypes.

InvalidOperationException

The type was previously created using CreateType.

-or-

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

This overload is provided for designers of managed compilers.

NoteNote:

For more information on custom modifiers, see the ECMA Partition II Metadata documentation. Partition II documentation is available online at http://msdn.microsoft.com/net/ecma/ and http://www.ecma-international.org/publications/standards/Ecma-335.htm.

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
Show: