WPF EntityFrameworkCoreDataSource Overview

RadEntityFrameworkCoreDataSource is a WPF data control that provides seamless integration between an user interface and data coming from Entity Framework Core. RadEntityFrameworkCoreDataSource generates LINQ to Entities queries to retrieve data from a DbContext. The control can also perform basic CRUD operations on the database entities. The QueryableEntityCoreCollectionView class, which is internally used by the control is made publicly available for use in view models part of an MVVM architecture. Thanks to the fact that all controls are part of the Telerik family, RadEntityFrameworkCoreDataSource can codelessly integrate with RadGridView, RadDataPager and RadDataFilter to perform paging, filtering, sorting and grouping directly on the database server. RadEntityFrameworkCoreDataSource can also be used as a standalone data source control since it provides the public API needed for loading, shaping and editing data.

Telerik UI for WPF Ninja image

The RadEntityFrameworkCoreDataSource is part of Telerik UI for WPF, a professional grade UI library with 160+ components for building modern and feature-rich applications. To try it out sign up for a free 30-day trial.

Key Features

  • Codeless approach: Integration with RadGridView, RadDataPager and RadDataFilter. All of the controls share the same data engine logic and when data-bound together they are able to detect each other automatically and start exchanging information. Linking RadGridView, RadDataPager and RadDataFilter to a RadEntityFrameworkCoreDataSource is as easy as binding them to its DataView property. All operations such as paging, filtering, sorting, and grouping will automatically happen on the server without a single line of code.

  • Filtering: It can easily be performed through the FilterDescriptors collection of the control. You can populate this collection or leave it to controls such as RadGridView or RadDataFilter which will automatically translate their filtering criteria and apply it to RadEntityFrameworkCoreDataSource without a single line of code.

  • Sorting: It can easily be performed through the SortDescriptors collection of the control. You can populate this collection or leave it to RadGridView which will automatically translate its sorting criteria and apply it to RadEntityFrameworkCoreDataSource without a single line of code.

  • Grouping: It can easily be performed through the GroupDescriptors collection of the control. You can populate this collection or leave it to RadGridView which will automatically translate its grouping criteria and apply it to RadEntityFrameworkCoreDataSource without a single line of code.

  • Paging: It can easily be performed through the paging API that the DataView of control provides. You can use the methods from the MoveTo*Page family and properties such as PageIndex and PageSize. Alternatively it can be left to RadDataPager which will automatically page on the server when bound to the DataView of the control.

  • Editing: It is as simple as adding, removing or editing entities in the DataView of the control and then calling the SubmitChanges methods. These operations can also be left to RadGridView which will automatically transfer them to the RadEntityFrameworkCoreDataSource.

  • MVVM support: Provided by the public QueryableEntityCoreCollectionView class, which is the view that RadEntityFrameworkCoreDataSource internally uses. The RadEntityFrameworkCoreDataSource control is simply a thin-wrapper over this collection view, which performs all of the heavy lifting. This allows you to use it inside your view models without losing any functionality that the control would otherwise provide.

Get started with the control with its Getting Started help article that shows how to use it in a basic scenario.

Telerik UI for WPF Support and Learning Resources

In this article