TechTalk Genome v4.2

Object Identity Providers

The identity of transient (aka non-persistent) types is defined by the implementation of the Object.Equals method. Usually, the implementation is conducted by arbitrary transient features of the objects. Persistent classes are stored in a database independent from the code that creates them. Therefore, their identity must be described in a serialisable form in order to find and compare them on the server side. In Genome , an object identity provider has to be specified for persistent types which is responsible for translating the identity functions to the server side and implementing the Object.Equals method.

All types in a type family share the same identity model, so the identity model is established by defining it on the root type of the type family.

In Genome , the identity of an object must be fixed for its entire lifetime. The identity of the object cannot be changed after it has been established.

In the PrimaryKey identity model, the identity of objects is determined by the value of certain selected fields. These fields are also called primary key fields. This model corresponds to the primary key paradigm used in relational databases.

See Also

<PrimaryKey> Element