DomainComponentAttribute Class

Specifies that a target class or interface should be registered in the types info subsystem and participate in generation of the Application Model.

Namespace: DevExpress.ExpressApp.DC

Assembly: DevExpress.ExpressApp.v19.2.dll


[AttributeUsage(AttributeTargets.Class | AttributeTargets.Interface, Inherited = true)]
public class DomainComponentAttribute :
<AttributeUsage(AttributeTargets.Class Or AttributeTargets.Interface, Inherited:=True)>
Public Class DomainComponentAttribute
    Inherits Attribute


Participation in generation of the Application Model means that the BOModel node will expose a child node corresponding to the DomainComponentAttribute target. The Views node will contain ListView and DetailView nodes for the DomainComponentAttribute target.

You do not need to use the DomainComponentAttribute attribute in the following cases:

  • The target is an XPO persistent class declared within an XAF module.
  • The target is an Entity Framework class registered in a DbContext which is declared within an XAF module.

These classes are collected and registered automatically.

However, the DomainComponentAttribute is required when you declare a non-persistent class and want to display Views of this class in a UI.

When the DomainComponentAttribute is applied to an interface, this interface is considered to be a Domain Component


See Also