Skip to main content
.NET 6.0+

XPClassInfo.CreateMember(String, XPClassInfo, Boolean, Attribute[]) Method

Creates a new member metadata which is referenced to the specified XPClassInfo object.

Namespace: DevExpress.Xpo.Metadata

Assembly: DevExpress.Xpo.v23.2.dll

NuGet Package: DevExpress.Xpo

Declaration

public XPCustomMemberInfo CreateMember(
    string propertyName,
    XPClassInfo referenceType,
    bool nonPersistent,
    params Attribute[] attributes
)

Parameters

Name Type Description
propertyName String

A String value which specifies the name of the new member.

referenceType XPClassInfo

An XPClassInfo object that provides the metadata of the class which the new property references.

nonPersistent Boolean

true if the new member is non persistent; otherwise, false.

attributes Attribute[]

An array of Attribute objects that represent the attributes of the new member.

Returns

Type Description
XPCustomMemberInfo

An XPCustomMemberInfo descendant which provides the new member’s metadata.

Remarks

The CreateMember method allows custom members to be created dynamically.

Example

The following sample code shows how to create custom fields using the XPClassInfo.CreateMember method.

using DevExpress.Xpo;
using DevExpress.Xpo.Metadata;
// ...

XPClassInfo customerClassInfo = Session.DefaultSession.GetClassInfo(typeof(Customer));
customerClassInfo.CreateMember("Name", typeof(string));
customerClassInfo.CreateMember("CompanyName", typeof(string));
// Set the nonPersistent parameter to true for collection properties
customerClassInfo.CreateMember("Orders", typeof(XPCollection), true, 
    new AssociationAttribute("CustomerOrders", typeof(Order)), new AggregatedAttribute());
See Also