A newer version of this page is available. Switch to the current version.

Binding to Data via Entity Framework or LINQ to SQL (Database First)

  • 3 minutes to read

The DevExpress MVC VerticalGrid supports binding to an existing data source using the LINQ or the Entity Framework.

If you already have a database, the LINQ to SQL ORM Framework or the Entity Framework ORM can automatically generate a data model that consists of classes and properties that correspond to existing database objects such as tables and columns. This development approach is called "Database First".

This topic describes how to bind the MVC VerticalGrid to a data source using the "Database First" development approach.

IMPORTANT

Project requirements:

Your project should be prepared for using DevExpress MVC Extensions. See the following topic to learn how to prepare your project: Integration into an ASP.NET MVC Project.

To use the Server Mode with Entity Framework 6+, it is necessary to use special options on the application startup. To learn more, see the Knowledge Base Article: Is it possible to use the Entity Framework 6 and Server Mode together.

To implement this kind of data binding, you need to perform the following steps.

Step 1. Create a data model

Use the required ORM framework to reverse engineer a model from an existing database.

  • LINQ to SQL ORM Framework

    Create a LINQ to SQL data model. The following MSDN topic demonstrates how to add LINQ to SQL data model classes using the O/R designer: How to: Add LINQ to SQL Classes to a Project (O/R Designer).

    Refer to the following MSDN Learning Center article to learn more about the LINQ to SQL ORM Framework: LINQ to SQL.

  • Entity Framework ORM

    NOTE

    Before you start, make sure you have the Entity Framework installed. Learn more about how to get the Entity Framework from the following MSDN tutorial: Get Entity Framework.

    Create an Entity Framework data model. The following walkthrough demonstrates how to reverse engineer a model from an existing database: Entity Framework Database First.

Rebuild the solution before going on to the next step.

Step 2. Add the VerticalGrid to the required View

Open the required View file (Index.cshtml in this topic), focus on the position in the code where you would like to insert the VerticalGrid, and right-click -> select "Insert DevExpress MVC Extension v18.2…"

MVC_Grid_CF_Binding_EF_InvokeMVCWizard.png

The Insert Extension Wizard opens. Navigate to the tab with the Data extensions and select the VerticalGrid. Define the extension name and the partial view name. In the 'Model class' item select the data model class, in the 'Data context class' item select the data context class, select the columns you wish to display within the VerticalGrid and select the key field.

MVC_VerticalGrid_CF_Binding_EF_WizardSettings

Click the 'Insert' button, and the VerticalGrid will be added into your project. See this topic to learn more about the MVC Wizard: Insert DevExpress MVC Extension Wizard.

After performing these operations, the Insert Extension Wizard generates a partial view that contains the VerticalGrid's settings and inserts the necessary code into the corresponding controller class. As a result, you have a fully functional MVC VerticalGrid bound to an existing data source.

See Also