Export (0) Print
Expand All
This topic has not yet been rated - Rate this topic

CustomAttributeBuilder Constructor (ConstructorInfo, Object[], PropertyInfo[], Object[], FieldInfo[], Object[])

Initializes an instance of the CustomAttributeBuilder class given the constructor for the custom attribute, the arguments to the constructor, a set of named property or value pairs, and a set of named field or value pairs.

Namespace:  System.Reflection.Emit
Assembly:  mscorlib (in mscorlib.dll)
public CustomAttributeBuilder(
	ConstructorInfo con,
	Object[] constructorArgs,
	PropertyInfo[] namedProperties,
	Object[] propertyValues,
	FieldInfo[] namedFields,
	Object[] fieldValues
)

Parameters

con
Type: System.Reflection.ConstructorInfo

The constructor for the custom attribute.

constructorArgs
Type: System.Object[]

The arguments to the constructor of the custom attribute.

namedProperties
Type: System.Reflection.PropertyInfo[]

Named properties of the custom attribute.

propertyValues
Type: System.Object[]

Values for the named properties of the custom attribute.

namedFields
Type: System.Reflection.FieldInfo[]

Named fields of the custom attribute.

fieldValues
Type: System.Object[]

Values for the named fields of the custom attribute.

ExceptionCondition
ArgumentException

The lengths of the namedProperties and propertyValues arrays are different.

-or-

The lengths of the namedFields and fieldValues arrays are different.

-or-

con is static or private.

-or-

The number of supplied arguments does not match the number of parameters of the constructor as required by the calling convention of the constructor.

-or-

The type of supplied argument does not match the type of the parameter declared in the constructor.

-or-

The types of the property values do not match the types of the named properties.

-or-

The types of the field values do not match the types of the corresponding field types.

-or-

A property has no setter.

-or-

The property or field does not belong to the same class or base class as the constructor.

-or-

A supplied argument, named property, or named field is a reference type other than String or Type.

ArgumentNullException

One of the parameters is null.

The elements of the constructorArgs, propertyValues, or fieldValues arrays are restricted to element types. They can be byte, sbyte, int, uint, long, ulong, float, double, String, char, bool, an enum, a type, any of the previous types that was cast to an object, or a single-dimension, zero-based array of any of the previous types.

Important noteImportant Note:

Do not include private properties or fields in namedProperties or namedFields. Doing so will cause CustomAttributeFormatException to be thrown when the GetCustomAttributes method is later called on the completed type.

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

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0
Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.