Dynamic Properties

Dynamic Properties is a mechanism for extension business objects, it allows to add the set of properties at runtime and does not require the recompilation of the project. Dynamic Properties is specified by the Xafari.BC.DynamicProperties.DynamicPropertiesObject class, which is constructed by means of .NET reflection, taking into account the  XAF metadata. This significantly expands the scope of its using in XAF applications. Xafari.BC.Xpo and Xafari.BC.DC modules provides a fully equipped base classes for utilizing in the custom projects.

Dynamic Properties are widely used within the Xafari framework, some components that use objects with Dynamic Properties are listed below.

DevExpress XAF framework also provides a tool for altering an existing business models without modifying the code, it is Custom Field. Unlike Custom Field, Dynamic Properties exist only for an object instance. Therefore, two objects of the same type may have different sets of Dynamic Properties. Xafari supplies a number of basic entities, which include ready-to-use mechanism for Dynamic Properties:

  • Xafari.BC.Xpo.DynamicProperties.XpoPersistentDynamicProperty;
  • Xafari.BC.Xpo.XafariBaseObject;
  • Xafari.BC.Xpo.DynamicProperties.XpoNonPersistentDynamicProperty;
  • Xafari.BC.DC.DynamicProperties.PersistentDynamicObject;
  • Xafari.BC.DC.XafariObject.

To see Dynamic Properties in action, refer to the Dynamic Properties section in the Feature Center demo instaled with Xafari.


The topics in this section will provide you with an extensive knowledge of the Dynamic Properties.