[Expand]General Information
[Expand]WinForms Controls
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Office File API
[Expand]Reporting
[Expand]Report and Dashboard Server
[Expand]Dashboard
[Collapse]eXpressApp Framework
 [Expand]Fundamentals
 [Expand]Getting Started
 [Collapse]Concepts
  [Expand]Application Solution Components
  [Expand]Business Model Design
  [Expand]Application Model
  [Expand]UI Construction
  [Expand]Controllers and Actions
  [Collapse]Data Manipulation and Business Logic
    Object Space
    Ways to Implement Business Logic
    Create, Read, Update and Delete Data
    Access XAF Application Data in a non-XAF Application
  [Expand]Security System
  [Expand]Localization
  [Expand]System Module
  [Expand]Extra Modules
  [Expand]Debugging, Testing and Error Handling
  [Expand]Filtering
  [Expand]Application Life Cycle
 [Expand]Design-Time Features
 [Expand]Deployment
 [Expand]Task-Based Help
  Frequently Asked Questions (FAQ)
 [Expand]API Reference
[Expand]eXpress Persistent Objects
[Expand]CodeRush
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation
View this topic on docs.devexpress.com (Learn more)

Object Space

In XAF applications, all data-aware manipulations are performed via the Object Space - an abstraction on the database context, allowing you to query or modify data in the transaction. Object Space is an ORM-independent implementation of the well-known Repository and Unit Of Work design patterns.

Object Space members are declared in the IObjectSpace interface. XAF provides the following classes that implement this interface:

Note

Mobile applications support the XPObjectSpace only.

These classes inherit the BaseObjectSpace class that implements the common code.

In most cases, you will access Object Space via the IObjectSpace interface and do not need to use these classes directly.

To see how you can access an IObjectSpace object to write business logic in various contexts, proceed to the Ways to Implement Business Logic topic. To learn about Object Space API, see Create, Read, Update and Delete Data.

Expanded See Also

Is this topic helpful?​​​​​​​