Session.GetObjectByKeyAsync(XPClassInfo, Object, CancellationToken) Method
Asynchronously returns a persistent object that has the specified key property value.
Namespace: DevExpress.Xpo
Assembly: DevExpress.Xpo.v24.2.dll
NuGet Package: DevExpress.Xpo
#Declaration
public Task<object> GetObjectByKeyAsync(
XPClassInfo classInfo,
object id,
CancellationToken cancellationToken = default(CancellationToken)
)
#Parameters
Name | Type | Description |
---|---|---|
class |
XPClass |
An XPClass |
id | Object | An object which represents the key property’s value of the persistent object. |
#Optional Parameters
Name | Type | Default | Description |
---|---|---|---|
cancellation |
Cancellation |
null | A Cancellation |
#Returns
Type | Description |
---|---|
Task<Object> | A Task that returns a persistent object. This persistent object has the specified key property value. The task returns null if no objects are found. |
#Remarks
Below is an example of using the GetObjectByKeyAsync method. Here, the session is the Session instance.
using System.Threading;
using DevExpress.Xpo;
using DevExpress.Xpo.Metadata;
// ...
XPClassInfo personClassInfo = session.GetClassInfo(typeof(Person));
CancellationTokenSource source = new CancellationTokenSource();
CancellationToken cancellationToken = source.Token;
Person personToDelete = (Person)await session.GetObjectByKeyAsync(personClassInfo, 152, cancellationToken);
session.Delete(personToDelete);
The GetObjectByKeyAsync method searches in memory for the object with the specified key property value. If such an object is found, it is not reloaded. To get the up-to-date object from the data store, use the overloaded Session.GetObjectByKeyAsync method with the alwaysGetFromDataStore parameter set to true.
Note
The Get