Skip to main content
.NET 6.0+

Session.GetObjectByKey(XPClassInfo, Object, Boolean) Method

Returns the reloaded persistent object with the specified value of the key property from a data store.

Namespace: DevExpress.Xpo

Assembly: DevExpress.Xpo.v23.2.dll

NuGet Package: DevExpress.Xpo

Declaration

public object GetObjectByKey(
    XPClassInfo classInfo,
    object id,
    bool alwaysGetFromDataStore
)

Parameters

Name Type Description
classInfo XPClassInfo

An XPClassInfo object which contains the metadata information of the class.

id Object

An object which represents the key property’s value of the persistent object.

alwaysGetFromDataStore Boolean

true, to reload the persistent object from storage if it is found in memory; otherwise, false.

Returns

Type Description
Object

An object which represents the persistent object with the specified value of the key property. Null if no objects are found.

Remarks

Below is an example of using the GetObjectByKey method. Here, session is the Session instance.

using DevExpress.Xpo;
using DevExpress.Xpo.Metadata;
// ...
XPClassInfo personClassInfo = session.GetClassInfo(typeof(Person));
Person personToDelete = (Person)session.GetObjectByKey(personClassInfo, 152, true);
personToDelete.Delete();

Firstly, the GetObjectByKey method searches in memory for the object with the specified value of the key property. If such an object is found, it is not reloaded. To get the up-to-date object from storage the alwaysGetFromDb parameter must be set to true.

Note

The GetObjectByKey method does not find objects until they are saved to a data store.

See Also