[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
 [Expand]Concepts
 [Expand]Design-Time Features
 [Expand]Deployment
 [Expand]Task-Based Help
  Frequently Asked Questions (FAQ)
 [Collapse]API Reference
  [Expand]DevExpress.EasyTest.Framework
  [Collapse]DevExpress.ExpressApp
   [Expand]BaseObjectSpace Class
    CheckCompatibilityType Enumeration
   [Expand]CollectionSource Class
   [Expand]CollectionSourceBase Class
    CollectionSourceDataAccessMode Enumeration
    CollectionSourceMode Enumeration
   [Expand]CollectionSourceModeAttribute Class
   [Expand]CompositeView Class
    ConfirmationResult Enumeration
    ConfirmationType Enumeration
   [Expand]Controller Class
   [Expand]CreateCustomCollectionSourceEventArgs Class
   [Expand]CreateCustomCurrentObjectDetailViewEventArgs Class
   [Expand]CreateCustomLogonParameterStoreEventArgs Class
   [Expand]CreateCustomLogonWindowControllersEventArgs Class
   [Expand]CreateCustomLogonWindowObjectSpaceEventArgs Class
   [Expand]CreateCustomModelCacheManagerEventArgs Class
   [Expand]CreateCustomModelDifferenceStoreEventArgs Class
   [Expand]CreateCustomObjectSpaceProviderEventArgs Class
   [Expand]CreateCustomPropertyCollectionSourceEventArgs Class
   [Expand]CreateCustomTemplateEventArgs Class
   [Expand]CustomCheckCompatibilityEventArgs Class
   [Expand]CustomHasPermissionToEventArgs Class
   [Expand]CustomizeFormattingCultureEventArgs Class
   [Expand]CustomizeLanguageEventArgs Class
   [Expand]CustomizeTemplateEventArgs Class
   [Expand]CustomizeViewShortcutArgs Class
   [Expand]CustomProcessShortcutEventArgs Class
   [Expand]DashboardView Class
   [Expand]DashboardViewCreatedEventArgs Class
   [Expand]DashboardViewCreatingEventArgs Class
    DatabaseUpdateMode Enumeration
   [Expand]DatabaseVersionMismatchEventArgs Class
   [Expand]DefaultListViewOptionsAttribute Class
   [Expand]DetailView Class
   [Expand]DetailViewCreatedEventArgs Class
   [Expand]DetailViewCreatingEventArgs Class
   [Expand]Frame Class
    FrameContext Enumeration
   [Expand]IModelDifference Interface
   [Expand]IModelDifferenceAspect Interface
   [Expand]IModelExtender Interface
    InformationPosition Enumeration
    InformationType Enumeration
   [Collapse]IObjectSpace Interface
     IObjectSpace Members
    [Expand]IObjectSpace Properties
    [Expand]IObjectSpace Events
    [Collapse]IObjectSpace Methods
      ApplyCriteria Method
      ApplyFilter Method
      CanApplyCriteria Method
      CanApplyFilter Method
      CanInstantiate Method
      CommitChanges Method
      Contains Method
     [Expand]CreateCollection Method
     [Expand]CreateDataView Method
      CreateInstantFeedbackCollection Method
      CreateNestedObjectSpace Method
      CreateObject Method
      CreateObject<ObjectType> Method
      CreateParseCriteriaScope Method
      CreateServerCollection Method
     [Expand]Delete Method
      EnableObjectDeletionOnRemove Method
      Evaluate Method
     [Expand]FindObject Method
     [Expand]FindObject<ObjectType> Method
      GetAssociatedCollectionCriteria Method
      GetCollectionSorting Method
      GetCriteria Method
      GetDisplayableProperties Method
      GetEvaluatorContextDescriptor Method
     [Expand]GetExpressionEvaluator Method
      GetFilter Method
      GetKeyPropertyName Method
      GetKeyPropertyType Method
      GetKeyValue Method
      GetKeyValueAsString Method
      GetObject Method
      GetObject<ObjectType> Method
      GetObjectByHandle Method
      GetObjectByKey Method
      GetObjectByKey<ObjectType> Method
      GetObjectHandle Method
      GetObjectKey Method
     [Expand]GetObjects Method
     [Expand]GetObjects<T> Method
      GetObjectsCount Method
      GetObjectsQuery<T> Method
      GetObjectsToDelete Method
      GetObjectsToSave Method
      GetObjectType Method
      GetTopReturnedObjectsCount Method
      IsCollectionLoaded Method
      IsDeletedObject Method
      IsDeletionDeferredType Method
      IsDisposedObject Method
      IsKnownType Method
      IsNewObject Method
      IsObjectDeletionOnRemoveEnabled Method
     [Expand]IsObjectFitForCriteria Method
      IsObjectToDelete Method
      IsObjectToSave Method
      ParseCriteria Method
      Refresh Method
      ReloadCollection Method
      ReloadObject Method
      RemoveFromModifiedObjects Method
      Rollback Method
      SetCollectionSorting Method
      SetDisplayableProperties Method
     [Expand]SetModified Method
      SetTopReturnedObjectsCount Method
   [Expand]IObjectSpaceLink Interface
   [Expand]IObjectSpaceProvider Interface
   [Expand]ISettingsProvider Interface
   [Expand]ISupportNewItemRowPosition Interface
   [Expand]ISupportUpdate Interface
   [Expand]IXafEntityObject Interface
   [Expand]LastLogonParametersReadEventArgs Class
   [Expand]LastLogonParametersReadingEventArgs Class
   [Expand]LastLogonParametersWritingEventArgs Class
   [Expand]ListView Class
   [Expand]ListViewCreatedEventArgs Class
   [Expand]ListViewCreatingEventArgs Class
   [Expand]ListViewFindPanelAttribute Class
   [Expand]LoggingOffEventArgs Class
   [Expand]LogonEventArgs Class
   [Expand]LogonFailedEventArgs Class
    LookupEditCollectionSourceMode Enumeration
   [Expand]LookupEditPropertyCollectionSource Class
    MasterDetailMode Enumeration
   [Expand]MessageOptions Class
   [Expand]ModelCacheManager Class
   [Expand]ModelDifferenceStore Class
   [Expand]ModelStoreBase Class
   [Expand]ModuleBase Class
   [Expand]NestedFrame Class
    Nesting Enumeration
    NewItemRowPosition Enumeration
    NewWindowTarget Enumeration
   [Expand]NonPersistentObjectSpace Class
   [Expand]ObjectChangedEventArgs Class
   [Expand]ObjectManipulatingEventArgs Class
   [Expand]ObjectsCountGettingEventArgs Class
   [Expand]ObjectsManipulatingEventArgs Class
   [Expand]ObjectSpaceCreatedEventArgs Class
   [Expand]ObjectView Class
   [Expand]ObjectViewController Class
   [Expand]ObjectViewController<ViewType, ObjectType> Class
   [Expand]ProcessActionContainerEventArgs Class
   [Expand]PropertyCollectionSource Class
    SchemaUpdateMode Enumeration
   [Expand]SecuritySystem Class
    SelectionType Enumeration
   [Expand]ShowViewParameters Class
   [Expand]ShowViewSource Class
   [Expand]ShowViewStrategyBase Class
    TargetWindow Enumeration
   [Expand]TemplateContext Structure
    UIType Enumeration
   [Expand]ValidateObjectEventArgs Class
   [Expand]View Class
   [Expand]ViewController Class
   [Expand]ViewController<ViewType> Class
   [Expand]ViewCreatedEventArgs Class
   [Expand]ViewCreatingEventArgs Class
   [Expand]ViewItemsChangedEventArgs Class
    ViewItemsChangedType Enumeration
   [Expand]ViewShortcut Class
   [Expand]ViewShowingEventArgs Class
   [Expand]ViewShownEventArgs Class
    ViewType Enumeration
   [Expand]WebMessageOptions Class
   [Expand]Window Class
   [Expand]WindowController Class
    WindowType Enumeration
   [Expand]WinMessageOptions Class
    WinMessageType Enumeration
   [Expand]XafApplication Class
   [Expand]XafDataView Class
   [Expand]XafDataViewRecord Class
   [Expand]XafInstantFeedbackRecord Class
  [Expand]DevExpress.ExpressApp.Actions
  [Expand]DevExpress.ExpressApp.AuditTrail
  [Expand]DevExpress.ExpressApp.Chart
  [Expand]DevExpress.ExpressApp.Chart.Web
  [Expand]DevExpress.ExpressApp.Chart.Win
  [Expand]DevExpress.ExpressApp.CloneObject
  [Expand]DevExpress.ExpressApp.ConditionalAppearance
  [Expand]DevExpress.ExpressApp.Dashboards
  [Expand]DevExpress.ExpressApp.Dashboards.Web
  [Expand]DevExpress.ExpressApp.Dashboards.Win
  [Expand]DevExpress.ExpressApp.Data
  [Expand]DevExpress.ExpressApp.DC
  [Expand]DevExpress.ExpressApp.DC.ClassGeneration
  [Expand]DevExpress.ExpressApp.Editors
  [Expand]DevExpress.ExpressApp.EF
  [Expand]DevExpress.ExpressApp.EF.Utils
  [Expand]DevExpress.ExpressApp.FileAttachments.Web
  [Expand]DevExpress.ExpressApp.FileAttachments.Win
  [Expand]DevExpress.ExpressApp.Filtering
  [Expand]DevExpress.ExpressApp.HtmlPropertyEditor.Web
  [Expand]DevExpress.ExpressApp.HtmlPropertyEditor.Win
  [Expand]DevExpress.ExpressApp.Kpi
  [Expand]DevExpress.ExpressApp.Layout
  [Expand]DevExpress.ExpressApp.Maps.Mobile
  [Expand]DevExpress.ExpressApp.Maps.Mobile.Editors
  [Expand]DevExpress.ExpressApp.Maps.Web
  [Expand]DevExpress.ExpressApp.Maps.Web.Helpers
  [Expand]DevExpress.ExpressApp.MiddleTier
  [Expand]DevExpress.ExpressApp.Mobile
  [Expand]DevExpress.ExpressApp.Mobile.Editors
  [Expand]DevExpress.ExpressApp.Mobile.MobileModel
  [Expand]DevExpress.ExpressApp.Mobile.SystemModule
  [Expand]DevExpress.ExpressApp.Mobile.Templates
  [Expand]DevExpress.ExpressApp.Model
  [Expand]DevExpress.ExpressApp.Model.Core
  [Expand]DevExpress.ExpressApp.Model.NodeGenerators
  [Expand]DevExpress.ExpressApp.ModelEditor
  [Expand]DevExpress.ExpressApp.Notifications
  [Expand]DevExpress.ExpressApp.Notifications.Web
  [Expand]DevExpress.ExpressApp.Notifications.Win
  [Expand]DevExpress.ExpressApp.Office.Win
  [Expand]DevExpress.ExpressApp.PivotChart
  [Expand]DevExpress.ExpressApp.PivotChart.Web
  [Expand]DevExpress.ExpressApp.PivotChart.Win
  [Expand]DevExpress.ExpressApp.PivotGrid
  [Expand]DevExpress.ExpressApp.PivotGrid.Web
  [Expand]DevExpress.ExpressApp.PivotGrid.Win
  [Expand]DevExpress.ExpressApp.Reports
  [Expand]DevExpress.ExpressApp.Reports.Web
  [Expand]DevExpress.ExpressApp.Reports.Win
  [Expand]DevExpress.ExpressApp.ReportsV2
  [Expand]DevExpress.ExpressApp.ReportsV2.Mobile
  [Expand]DevExpress.ExpressApp.ReportsV2.Web
  [Expand]DevExpress.ExpressApp.ReportsV2.Win
  [Expand]DevExpress.ExpressApp.Scheduler
  [Expand]DevExpress.ExpressApp.Scheduler.Web
  [Expand]DevExpress.ExpressApp.Scheduler.Win
  [Expand]DevExpress.ExpressApp.ScriptRecorder
  [Expand]DevExpress.ExpressApp.ScriptRecorder.Web
  [Expand]DevExpress.ExpressApp.ScriptRecorder.Win
  [Expand]DevExpress.ExpressApp.Security
  [Expand]DevExpress.ExpressApp.Security.Adapters
  [Expand]DevExpress.ExpressApp.Security.ClientServer.Wcf
  [Expand]DevExpress.ExpressApp.Security.EF.Adapters
  [Expand]DevExpress.ExpressApp.Security.Strategy
  [Expand]DevExpress.ExpressApp.Security.Xpo.Adapters
  [Expand]DevExpress.ExpressApp.StateMachine
  [Expand]DevExpress.ExpressApp.SystemModule
  [Expand]DevExpress.ExpressApp.Templates
  [Expand]DevExpress.ExpressApp.Templates.ActionContainers
  [Expand]DevExpress.ExpressApp.TreeListEditors
  [Expand]DevExpress.ExpressApp.TreeListEditors.Web
  [Expand]DevExpress.ExpressApp.TreeListEditors.Win
  [Expand]DevExpress.ExpressApp.Updating
  [Expand]DevExpress.ExpressApp.Utils
  [Expand]DevExpress.ExpressApp.Validation
  [Expand]DevExpress.ExpressApp.Validation.Web
  [Expand]DevExpress.ExpressApp.Validation.Win
  [Expand]DevExpress.ExpressApp.ViewVariantsModule
  [Expand]DevExpress.ExpressApp.Web
  [Expand]DevExpress.ExpressApp.Web.Controls
  [Expand]DevExpress.ExpressApp.Web.Editors
  [Expand]DevExpress.ExpressApp.Web.Editors.ASPx
  [Expand]DevExpress.ExpressApp.Web.SystemModule
  [Expand]DevExpress.ExpressApp.Web.Templates
  [Expand]DevExpress.ExpressApp.Web.Utils
  [Expand]DevExpress.ExpressApp.Win
  [Expand]DevExpress.ExpressApp.Win.Core
  [Expand]DevExpress.ExpressApp.Win.Editors
  [Expand]DevExpress.ExpressApp.Win.Model
  [Expand]DevExpress.ExpressApp.Win.SystemModule
  [Expand]DevExpress.ExpressApp.Win.Templates
  [Expand]DevExpress.ExpressApp.Win.Templates.Navigation
  [Expand]DevExpress.ExpressApp.Win.Utils
  [Expand]DevExpress.ExpressApp.Workflow
  [Expand]DevExpress.ExpressApp.Workflow.Win
  [Expand]DevExpress.ExpressApp.Xpo
  [Expand]DevExpress.ExpressApp.Xpo.Utils
  [Expand]DevExpress.Persistent.Base
  [Expand]DevExpress.Persistent.Base.General
  [Expand]DevExpress.Persistent.Base.ReportsV2
  [Expand]DevExpress.Persistent.Base.Security
  [Expand]DevExpress.Persistent.BaseImpl
  [Expand]DevExpress.Persistent.BaseImpl.EF
  [Expand]DevExpress.Persistent.BaseImpl.EF.PermissionPolicy
  [Expand]DevExpress.Persistent.BaseImpl.PermissionPolicy
  [Expand]DevExpress.Persistent.Validation
[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)

IObjectSpace.Refresh Method

Updates the persistent objects belonging to the current Object Space.

Namespace:DevExpress.ExpressApp
Assembly:DevExpress.ExpressApp.v19.1.dll

Expanded Syntax

Return value

Type: Boolean
true if persistent objects were refreshed; otherwise, false.

Expanded Remarks

Use this method to update the current Object Space's persistent objects.

The example below adds a new Contact object to a List View and refreshes the Object Space to show the new object.

When implementing the IObjectSpace interface in the BaseObjectSpace class's descendant, override a protected virtual BaseObjectSpace.Reload method. It is invoked by the BaseObjectSpace.Refresh method, which does the following: If no objects belonging to the current Object Space have been changed after retrieving them or after the last commit (see CommitChanges), the BaseObjectSpace.Refresh method recreates the Object Space's container for in-memory objects by calling the Reload method, re-retrieves the objects from it and returns true. If at least one object change has been performed, the ConfirmationRequired event is raised. Handle this event to show a confirmation window that asks whether to save changes. For this purpose, use the XafApplication.AskConfirmation method. This method returns the ConfirmationResult enumeration value that corresponds to an end-user's choice. Successive actions depend on this choice:

  • Yes

    The CommitChanges method is invoked. This method saves all the tracked changes made to the Object Space's persistent objects to the database. The Refresh method returns true.

  • No

    The BaseObjectSpace.Reload method is invoked to recreate the Object Space's container for in-memory objects (XPObjectSpace.Session in XPObjectSpace and EFObjectSpace.ObjectContext in EFObjectSpace), and persistent objects are re-retrieved. The BaseObjectSpace.Refresh method returns true.

  • Cancel

    The BaseObjectSpace.Refresh method does nothing and returns false.

The ConfirmationRequired event is handled only by the WinModificationsController, which is activated for Detail Views in Windows Forms applications. The Controller's handler invokes a confirmation window as described above. When the Refresh method is invoked within a List View or in an ASP.NET Web application, a confirmation window is not invoked. However, the ConfirmationResult.No value is set by default, which disposes of all changes and again retrieves objects via a reestablished database connection.

The following events related to the Refresh method are available:

  • Refreshing

    Raised before the refresh to prevent it.

  • CustomRefresh

    Rasied before the refresh to force a custom refresh operation instead of the default one.

So, to implement a refresh operation, you only have to override the BaseObjectSpace.Reload method. In this method, recreate the Object Space's container for in-memory objects (in XPO it's a XPObjectSpace.Session. In the Entity Framework it's EFObjectSpace.ObjectContext).

Expanded See Also

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