ASPxDashboard.ConfigureDataReloadingTimeout Event
Allows you to set a time interval that specifies how frequently the Web Dashboard refreshes its in-memory cache when a user sends a data request.
Namespace: DevExpress.DashboardWeb
Assembly: DevExpress.Dashboard.v25.2.Web.WebForms.dll
NuGet Package: DevExpress.Web.Dashboard
Declaration
Event Data
The ConfigureDataReloadingTimeout event's data class is ConfigureDataReloadingTimeoutWebEventArgs. The following properties provide information specific to this event:
| Property | Description |
|---|---|
| DashboardId | Gets the identifier of the current dashboard. |
| DataMember | Gets the identifier of a corresponding data member in the data source. |
| DataReloadingTimeout | Gets or sets a time interval that is the data reloading timeout. |
| DataSourceName | Gets the data source’s ComponentName for which the event was raised. |
Remarks
The Web Dashboard allows you to set a time interval that specifies how frequently the Web Dashboard refreshes its cache when a user sends a data request. Handle the ConfigureDataReloadingTimeout event to change this time interval.
For instance, if you set the ConfigureDataReloadingTimeoutWebEventArgs.DataReloadingTimeout event parameter to 100 seconds, the Web Dashboard updates the cache when a new request is received and the current cache version was created more than 100 seconds ago. The cached data is disposed of and new data is loaded instead.
Note
DataReloadingTimeout defines a time interval during which a cache record exists, measured from the moment it is created. To prevent memory leaks, the Web Dashboard control also limits the lifetime of each cache record to 300 seconds from the moment it was last accessed. If a cache record is not accessed within 300 seconds, it is marked as stale and removed from the cache.
To learn how the Web Dashboard manages its in-memory cache, see the following help topic: Manage an In-Memory Data Source Cache in ASP.NET Web Forms.
The following code snippet sets a data reload timeout for a specific data source:
private void ASPxDashboard1_ConfigureDataReloadingTimeout(object sender, ConfigureDataReloadingTimeoutWebEventArgs e) {
if (e.DataSourceName == "sqlDataSource") {
e.DataReloadingTimeout = TimeSpan.FromSeconds(5);
}
}