The requested page is not available for the requested platform. You are viewing the content for .NET Framework 4.5.2+ platform.
.NET Framework 4.5.2+
.NET Framework 4.5.2+
.NET Standard 2.0+

Session.FindObjectAsync<ClassType>(CriteriaOperator, Boolean, CancellationToken) Method

Asynchronously searches for the first object that matches the specified criteria. This object's type is designated by the specified generic parameter.

Namespace: DevExpress.Xpo

Assembly: DevExpress.Xpo.v19.2.dll

Declaration

public Task<ClassType> FindObjectAsync<ClassType>(
    CriteriaOperator criteria,
    bool selectDeleted,
    CancellationToken cancellationToken = default(CancellationToken)
)
Public Function FindObjectAsync(Of ClassType)(
    criteria As CriteriaOperator,
    selectDeleted As Boolean,
    cancellationToken As CancellationToken = Nothing
) As Task(Of ClassType)
public Task<ClassType> FindObjectAsync<ClassType>(
    CriteriaOperator criteria,
    bool selectDeleted,
    CancellationToken cancellationToken = default(CancellationToken)
)
Public Function FindObjectAsync(Of ClassType)(
    criteria As CriteriaOperator,
    selectDeleted As Boolean,
    cancellationToken As CancellationToken = Nothing
) As Task(Of ClassType)

Parameters

Name Type Description
criteria CriteriaOperator

A CriteriaOperator descendant which represents the criteria the persistent object must match.

selectDeleted Boolean

true, to include persistent objects marked as deleted into the search; otherwise, false.

cancellationToken CancellationToken

A CancellationToken object that delivers a cancellation notice to the running operation.

Parameters

Name Type Description
criteria CriteriaOperator

A CriteriaOperator descendant which represents the criteria the persistent object must match.

selectDeleted Boolean

true, to include persistent objects marked as deleted into the search; otherwise, false.

cancellationToken CancellationToken

A CancellationToken object that delivers a cancellation notice to the running operation.

Returns

Type Description
Task<ClassType>

A Task that returns an object. This object represents the first persistent object that matches the specified criteria. null (Nothing in Visual Basic) if no persistent object is found that matches the criteria.

Returns

Type Description
Task<ClassType>

A Task that returns an object. This object represents the first persistent object that matches the specified criteria. null (Nothing in Visual Basic) if no persistent object is found that matches the criteria.

Type Parameters

Name Description
ClassType

Type Parameters

Name Description
ClassType

Remarks

Below is an example of using the FindObjectAsync<ClassType> method. Here, session is the Session instance.

using System.Threading;
using DevExpress.Data.Filtering;
using DevExpress.Xpo;
// ...
CancellationTokenSource source = new CancellationTokenSource();
CancellationToken cancellationToken = source.Token;
Person personToUpdate = 
    await session.FindObjectAsync<Person>(CriteriaOperator.Parse("Name='Michael Suyama'"), 
    true, cancellationToken);
if(personToUpdate != null) {
    personToUpdate.Birthday = new DateTime(1986, 10, 31);
    session.Save(personToUpdate);
}

Criteria are evaluated on the data store side. Objects created within a transaction (Cache) are not processed by the criteria. Objects modified within a transaction are not processed. Instead, their images, stored in the data store, are processed by the criteria.

To specify how filter criteria are evaluated within a transaction, use the overloaded FindObjectAsync method that takes the PersistentCriteriaEvaluationBehavior value as a parameter.

Persistent objects that are marked as deleted in the database (see Deferred and Immediate Object Deletion) are can be optionally included in the search using the selectDeleted parameter.

See Also