EntityInstantFeedbackSource Class
The data source for the GridControl and SearchLookUpEdit that binds these controls to Entity Framework 4+ model classes in Instant Feedback Mode.
Namespace: DevExpress.Data.Linq
Assembly: DevExpress.Data.v24.1.dll
NuGet Package: DevExpress.Data
Declaration
[ToolboxBitmap(typeof(ResFinder), "Bitmaps256.EntityInstantFeedbackSource.bmp")]
[ToolboxTabName("DX.24.1: Data & Analytics")]
public class EntityInstantFeedbackSource :
Component,
IListSource,
IDXCloneable
Remarks
Instant Feedback binding mode is an improvement over regular server mode. In server mode, the Grid Control loads data in small portions and delegates all data operations (sorting, grouping, filtering and calculating summaries) to the data server. This is the key to the server mode’s high efficiency when working with large volumes of data. The only drawback to using server mode involves data operations when the connection to the server is slow. In this instance, the bound control freezes until the data server completes operations and retrieves results. With Instant Feedback binding mode, data operations are performed asynchronously in a background thread, and both the bound control and the application remain highly responsive. Currently, this mode is supported by the GridControl and SearchLookUpEdit controls.
For additional information on Instant Feedback mode, refer to the Large Data Sources: Server and Instant Feedback Modes section.
Note
The EntityInstantFeedbackSource is a read-only data source.
public partial class Form1 : Form {
private void Form1_Load(object sender, EventArgs e) {
efInstantFeedbackSource1.KeyExpression = "EmployeeID";
efInstantFeedbackSource1.GetQueryable += efInstantFeedbackSource1_GetQueryable;
efInstantFeedbackSource1.DismissQueryable += efInstantFeedbackSource1_DismissQueryable;
gridControl1.DataSource = efInstantFeedbackSource1;
}
void efInstantFeedbackSource1_GetQueryable(object sender, GetQueryableEventArgs e) {
NorthwindEntities objectContext = new NorthwindEntities();
e.QueryableSource = objectContext.Employees;
e.Tag = objectContext;
}
void efInstantFeedbackSource1_DismissQueryable(object sender, GetQueryableEventArgs e) {
((NorthwindEntities)e.Tag).Dispose();
}
}