SIGN UP MEMBER LOGIN:    
ARTICLE

EntityDataSource Control in ASP.NET 3.5

Posted by Raj Kumar Articles | ASP.NET Programming August 11, 2008
In this article I am going to discuss how to use EntityDataSource control step by step.
Reader Level:
Download Files:
 

In this article I am going to discuss how to use EntityDataSource control step by step. EntityDataSource is a new Data Source control for ASP.Net 3.5 like other controls SqlDataSource, LinqDataSource, ObjectDataSource which makes declaratively binding ASP.NET UI controls to Entity Data Models very easy.

First of all create a simple Web Application, and drag and drop EntityDataSource and Grid View controls on page.

Let's start by diagrams:

Figure1.

Add a new ADO.NET Entity Data Model in solution explorer.

Figure2.

By default it adds in App_Code folder.

Figure3.

Now choose model contents, select Generate from database and click next.

Figure4.

Choose You Data Connection and click next.

Figure5.

By default it saves connection string in configuration file.

<connectionStrings><add name="VendorEntities" connectionString="metadata=res://*;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=.;Initial Catalog=Vendor;Persist Security Info=True;User ID=sa;Password=wintellect;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" /><add name="VendorEntities1" connectionString="metadata=res://*;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=.;Initial Catalog=Vendor;Persist Security Info=True;User ID=sa;Password=wintellect;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" /></connectionStrings>

Choose Your Database Objects now and click next:

Figure6.

After click next it show diagram of your database object like this.

Figure7.

Now time to configure EntityDataSource control.

Figure8.

Configure ObjectContext and Click Next.

Figure9.

Configure Data Selection and click next.

Figure10.

Choose you data source id  for GridView Data Source. You can enable Sorting, Deleting, Selection, Editing, Paging.

Figure11.

On Page it looks like this:

<form id="form1" runat="server">

    <div>

    <h1>EntityDataSource Example</h1>

            <asp:GridView ID="GridView1" runat="server" AllowPaging="True"

                AllowSorting="True" AutoGenerateColumns="False" CellPadding="4"

                DataKeyNames="VendorId" DataSourceID="EntityDataSource1" ForeColor="#333333"

                GridLines="None">

                <RowStyle BackColor="#F7F6F3" ForeColor="#333333" />

                <Columns>

                    <asp:CommandField ShowDeleteButton="True" ShowEditButton="True"

                        ShowSelectButton="True" />

                    <asp:BoundField DataField="VendorId" HeaderText="VendorId" ReadOnly="True"

                        SortExpression="VendorId" />

                    <asp:BoundField DataField="VendorFName" HeaderText="VendorFName"

                        SortExpression="VendorFName" />

                    <asp:BoundField DataField="VendorLName" HeaderText="VendorLName"

                        SortExpression="VendorLName" />

                    <asp:BoundField DataField="VendorCity" HeaderText="VendorCity"

                        SortExpression="VendorCity" />

                    <asp:BoundField DataField="VendorState" HeaderText="VendorState"

                        SortExpression="VendorState" />

                    <asp:BoundField DataField="VendorCountry" HeaderText="VendorCountry"

                        SortExpression="VendorCountry" />

                    <asp:BoundField DataField="PostedDate" HeaderText="PostedDate"

                        SortExpression="PostedDate" />

                    <asp:BoundField DataField="VendorDescription" HeaderText="VendorDescription"

                        SortExpression="VendorDescription" />

                </Columns>

                <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />

                <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />

                <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />

                <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />

                <EditRowStyle BackColor="#999999" />

                <AlternatingRowStyle BackColor="White" ForeColor="#284775" />

            </asp:GridView>

            <br />

            <asp:EntityDataSource ID="EntityDataSource1" runat="server"

                ConnectionString="name=VendorEntities" DefaultContainerName="VendorEntities"

                EnableDelete="True" EnableInsert="True" EnableUpdate="True"

                EntitySetName="Vendor">

            </asp:EntityDataSource>

    </div>

    </form>

Figure12.

When you click on Select link button, It will select automatically, like this:

Figure13.

When you click on Edit, will looks like this.

That is it. I did not write one line of code and you can do whatever you want do with GridView.

Download attached sample project for more details.

Cool control.

 

Login to add your contents and source code to this article
share this article :
post comment
 

can some one help me how i can get data from diffrent table in my gridview?

Posted by sultan mohammad Jun 14, 2010

Hi there Raj.
If this is not the place to post questions, my apologies.
I am working with an EntityDataSource and a GridView just like in your sample.
However, the GridView has a checkbox column corresponding to a bit field in the database.
I am trying to force an update on each selected row, to avoid the user from having to click edit, click the checkbox, and click update.
Have you done this? If so, can you tell me how?
Thanks a lot
E.

Posted by Eric Martin May 03, 2010

thanks for the example,
do you have an example of c# entity as data source

Posted by eli nadan Sep 07, 2009

When I delete a row from the gridview and then hit the refresh page, an exception is thrown because the object is no longer in the database. I get the following error: Store update, insert, or delete statement affected an unexpected number of rows (0). Entities may have been modified or deleted since entities were loaded. Refresh ObjectStateManager entries. I would think that the Statemanager would be updated. Any suggestions ?

Posted by Matt Jan 02, 2009

Thanks, I always enoy your articles.

Posted by Michael Ryan Dec 30, 2008
Nevron Gauge for SharePoint
Become a Sponsor
PREMIUM SPONSORS
  • Finally – a virtual platform that delivers next-generation Windows Server 2008 Hyper-V virtualization technology from a managed hosting partner you can truly depend on. Visit www.maximumasp.com/max for a FREE 30 day trial. Hurry offer ends soon. Climb aboard the MaxV platform and take advantage of High Availability, Intelligent Monitoring, Recurrent Backups, and Scalability – with no hassle or hidden fees. As a managed hosting partner focused solely on Microsoft technologies since 2000, MaximumASP is uniquely qualified to provide the superior support that our business is built on. Unparalleled expertise with Microsoft technologies lead to working directly with Microsoft as first to offer IIS 7 and SQL 2008 betas in a hosted environment; partnering in the Go Live Program for Hyper-V; and product co-launches built on WS 2008 with Hyper-V technology.
    ceTE software specializes in components for dynamic PDF generation and manipulation. The DynamicPDF™ product line allows you to dynamically generate PDF documents, merge PDF documents and new content to existing PDF documents from within your applications. Visit DynamicPDF here
Team Foundation Server Hosting
Become a Sponsor