The interface that provides the essential functionality for persistent objects.
public interface IXPObject : IXPSimpleObject, IXPClassInfoAndSessionProvider, IXPClassInfoProvider, IXPDictionaryProvider, ISessionProvider, IObjectLayerProvider, IDataLayerProvider
Public Interface IXPObject Inherits IXPSimpleObject, IXPClassInfoAndSessionProvider, IXPClassInfoProvider, IXPDictionaryProvider, ISessionProvider, IObjectLayerProvider, IDataLayerProvider
To make any object persistent (so that it can be stored to/restored from a data store) you can implement the IXPObject or IXPSimpleObject interface. The IXPObject interface extends its ancestor (IXPSimpleObject) by declaring a set of methods that are called by a Session when significant changes occur during the object's lifetime.
The base class that implements the IXPObject interface is XPBaseObject. So, rather than implementing the IXPObject or IXPSimpleObject interface for a custom object, you can inherit it from the XPBaseObject class or one of its descendants.
It's also possible to make any object persistent by using the PersistentAttribute attribute.