Session.FindObject(PersistentCriteriaEvaluationBehavior, XPClassInfo, CriteriaOperator, Boolean) Method
Searches for the first object which matches the specified criteria.
Namespace: DevExpress.Xpo
Assembly: DevExpress.Xpo.v24.1.dll
NuGet Packages: DevExpress.Win.PivotGrid, DevExpress.Win.TreeMap, DevExpress.Xpo
NuGet Package: DevExpress.Xpo
Declaration
Parameters
Name | Type | Description |
---|---|---|
criteriaEvaluationBehavior | PersistentCriteriaEvaluationBehavior | A PersistentCriteriaEvaluationBehavior enumeration value that specifies how the persistent criteria is evaluated. |
classInfo | XPClassInfo | An XPClassInfo object which contains the metadata information of the class. |
criteria | CriteriaOperator | A CriteriaOperator descendant which represents the criteria to match persistent objects. |
selectDeleted | Boolean | true to include persistent objects marked as deleted into the search; otherwise, false. |
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'"), true);
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 can be optionally included in the search using the selectDeleted parameter.