BaseObjectSpace.GetObjects(Type, CriteriaOperator, IList<SortProperty>, Boolean) Method
Returns a sorted IList collection of objects of the specified type, retrieved to the current Object Space and filtered according to the specified criteria.
Namespace: DevExpress.ExpressApp
Assembly: DevExpress.ExpressApp.v22.2.dll
NuGet Package: DevExpress.ExpressApp
Declaration
Parameters
Name | Type | Description |
---|---|---|
objectType | Type | The type of the objects to be retrieved. |
criteria | CriteriaOperator | A CriteriaOperator which specifies the criteria for object selection. |
sorting | IList<SortProperty> | An IList<SortProperty> object that specifies sorting. |
inTransaction | Boolean | true if all objects (in the database and retrieved) are processed by the specified criteria; otherwise, false. Has effect in XPO only. |
Returns
Type | Description |
---|---|
IList | A IList collection that contains the persistent objects of the specified type. Only objects that satisfy the specified criteria will be retrieved to this collection. |
Remarks
Below is an example of using the GetObjects method. Here, objectSpace is the Object Space instance which can be accessed as described in the Ways to Access an Object Space (the Database Context for CRUD Operations) topic.
IList activeUsers = objectSpace.GetObjects(
typeof(PermissionPolicyUser), new BinaryOperator("IsActive", true), true);
When implementing the IObjectSpace interface in the BaseObjectSpace class’s descendant, don’t implement the GetObjects method. It’s implemented in the BaseObjectSpace class. To get the specified objects, the BaseObjectSpace.GetObjects(Type type, CriteriaOperator criteria, bool inTransaction) method invokes a protected virtual CreateCollection method that does nothing and returns null. So, you should override the CreateCollection method in your descendant.