CustomAttributeBuilder Constructor (ConstructorInfo, Object[], PropertyInfo[], Object[])
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Initializes a new instance of the CustomAttributeBuilder class, given the constructor for the custom attribute, the arguments to the constructor, and a set of named property or value pairs.
Assembly: mscorlib (in mscorlib.dll)
public CustomAttributeBuilder(
ConstructorInfo con,
Object[] constructorArgs,
PropertyInfo[] namedProperties,
Object[] propertyValues
)
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.
| Exception | Condition |
|---|---|
| ArgumentException | The lengths of the namedProperties and propertyValues 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- A property has no setter method. -or- The property does not belong to the same class or base class as the constructor. -or- A supplied argument or named property is a reference type other than String or Type. |
| ArgumentNullException | One of the parameters is null. |
The elements of the constructorArgs and propertyValues 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 Note: |
|---|
Do not include private properties in namedProperties. Doing so will cause CustomAttributeFormatException to be thrown when the GetCustomAttributes method is later called on the completed type. |
Important Note: