Session.FindObject(PersistentCriteriaEvaluationBehavior, XPClassInfo, CriteriaOperator) Method
Searches for the first object which matches the specified criteria.
Namespace: DevExpress.Xpo
Assembly: DevExpress.Xpo.v24.2.dll
NuGet Package: DevExpress.Xpo
#Declaration
public object FindObject(
PersistentCriteriaEvaluationBehavior criteriaEvaluationBehavior,
XPClassInfo classInfo,
CriteriaOperator criteria
)
#Parameters
Name | Type | Description |
---|---|---|
criteria |
Persistent |
A Persistent |
class |
XPClass |
An XPClass |
criteria | Criteria |
A Criteria |
#Returns
Type | Description |
---|---|
Object | An object which represents the first persistent object which matches the specified criteria. null (Nothing in Visual Basic) if no persistent object which matches the criteria is found. |
#Remarks
The example below demonstrates how to use this method. Here, session is the Session instance.
using DevExpress.Data.Filtering;
using DevExpress.Xpo;
using DevExpress.Xpo.Metadata;
// ...
XPClassInfo personClassInfo = session.GetClassInfo(typeof(Person));
Person personToUpdate = (Person)session.FindObject(PersistentCriteriaEvaluationBehavior.BeforeTransaction,
personClassInfo, CriteriaOperator.Parse("Name='Michael Suyama'"));
if(personToUpdate != null) {
personToUpdate.Birthday = new DateTime(1986, 10, 31);
session.Save(personToUpdate);
}
Persistent objects that are marked as deleted in the database (see Deferred and Immediate Object Deletion) are not included in the search.