Skip to main content

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

WcfInstantFeedbackDataSource.UseExtendedDataQuery Property

Gets or sets whether the grid control extends data queries to speed up the performance. This is a dependency property.

Namespace: DevExpress.Xpf.Core.ServerMode

Assembly: DevExpress.Xpf.Core.v24.2.dll

NuGet Package: DevExpress.Wpf.Core

#Declaration

public bool UseExtendedDataQuery { get; set; }

#Property Value

Type Description
Boolean

true to extend data queries; otherwise, false.

#Remarks

The DXGrid can load data from a SQL Server Database, using WCF Data Services, that implements the Open Data Protocol (OData). To load and manage data (group, sort, filter, calculate summary, etc.), DXGrid uses DataServiceQuery that implements the IQueryable interface. Queries are first evaluated on the client, and then a URI-based query is generated and sent to the data service. However, the URI syntax used by OData data services supports only six query operators: Select, Where, OrderBy, ThenBy, Skip and Take. Due to this limitation, DXGrid cannot retrieve required data (e.g., unique column values, evaluated summaries, group info, etc.) from a SQL Server Database in a single query. Instead, DXGrid sends multiple queries. This dramatically slows down the client application’s performance.

To avoid this performance decrease, do the following:

  • For each ObjectSet<TEntity> type property in the ObjectContext descendant, implement a data service method that calls an auxiliary DevExpress method. Use the following name syntax: GetPropertyNameExtendedData. For example, the corresponding method for the Orders property should be GetOrdersExtendedData.
  • Apply [WebGet(UriTemplate = “GetOrdersExtendedData?extendedDataInfo={extendedDataInfo}”)] attribute to the data service method.
  • Set the access rights on a service operation when the service is being initialized.
  • Enable the UseExtendedDataQuery option.
See Also