using ado net entity data model in windows applications

In this article, we will see how to use an entity data model in a windows application. We will assume that you know how to create an entity data model using Entity framework designer. If you do not know how to create one, read it here - create entity data model using entity framework designer in visual studio.

Let us now create a form and implement the following functionality.

Retrieve data and show it in a listbox control
Add a new customer to the database
Modify customer details and save data to the database
Delete a particular customer record from the database

The following figure is a data entity model created from the Sales Order Management database.
entity data model for Sales Order Management database
Add the controls to your form. The form should appear as shown in the below figure.
windows form
As the form loads, we want the customer details to be displayed in the listbox control. To do that, we need to write the following code in form_load event.

private void Form1_Load(object sender, EventArgs e)
	context = new SalesOrderManagementEntities();
	listBox1.DataSource = context.Customer;
	listBox1.DisplayMember = "Name";

In the above given Form_Load event code, we instantiate the ObjectContext class, in this case SalesOrderManagementEntities. Using this class, we can query the entity data model.

When we use the statement context.Customer, the ObjectContext performs the query against the database and returns the data from the customer table. Note that we have not explicitly opened a connection to the database nor written a single sql statement to retrieve data. Set the DataSource and DisplayMember properties of listbox control as shown above.

The add button enables the user to add a new customer. Double click the add button and add the following code in the add button click event handler.

private void btnAdd_Click(object sender, EventArgs e)
	context = new SalesOrderManagementEntities();
	Customer newCustomer = new Customer();
	newCustomer.Address="Vij Nagar";

In the above code, we instantiate the Customer class and assign values to the class member variables. Note that the entity framework generates AddToXXX methods while creating the entity data model. The XXX string is placed by the entity name. For every entity created in the model, one such method is created.

In the statement context.AddToCustomer(newCustomer), we have passed the object of the customer class to the AddToCustomer method. The method AddToCustomer inserts the new customer into the database.

Similarly we add the functionality for updating the customer details. Double click on the update button and add the following code.

private void btnUpdate_Click(object sender, EventArgs e)
	currentCustomer.Address = "Enter new address";

In the above code, we will modify the address property of the customer and call SaveChanges method of the objectContext class which will update the changes.

In the Delete button click event handler, first we need to identify the customer to be deleted and pass the customer to the DeleteObject method of ObjectContext class. Call SaveChanges method to delete customer data from the database.

private void btnDelete_Click(object sender, EventArgs e)
	stradd = currentCustomer.Address;

cover image of azure cloud book

Develop Azure Applications

Azure Cloud is gaining popularity and is competing with Amazon Elastic Cloud and Google Cloud for a spot in the billion dollar Cloud computing space.

With this book learn how to use - Table (an Azure Table is different from a SQL Server Table), Queue, Blob storage services, use your local machine to create an Application and a Service, how Azure splits a Table to achieve Load Balancing, Scalability based on the Partition Key, AppFabric Service Bus, Access Control Service, role of Fabric Controller, features of Azure SQL Database and Content Delivery Network.

Many have mastered Cloud Programming and are enjoying the benefits. Why not you?

View Highlights » View Contents »
cover image of foundation database programming book

Create your Own Accounting Software

A foundation book to Master Accounting Software Development, VB.Net, C# and OOPs programming. Detailed explanation of the Accounting domain for programmers is included. SQL and ADO.Net is also covered in detail.

This book gives you a strong foundation in Application Development.

A thorough understanding of the contents will enable you to grasp the topics covered in the accompanying books quite easily. This is because, the accounting domain is dealt with great detail in this book.

The ideal book to get started with application development in the .Net world.

View Highlights » View Contents »

cover image of book

Create your Own WEB ERP Software using ASP.Net

This book opens you to the Web. Using ASP.Net, C# and SQL Server as the tools, you will learn to build a Multi Tier Web Application as recommended by Microsoft. You will learn implementing inline GridView control, Transaction Management for a layered Web Application, build Data Access component and a Business Layer component.

Opens you to a world of opportunities. You will be able to develop a Web ERP application including all the five modules and learn how to use the TreeView control and GridView control to implement transactions such as Purchase Invoice, Sales Order and Sales Invoice.

View Highlights » View Contents »
cover image of entity framework book

ASP.Net MVC 5 Application Development Using Entity Framework 6 and VS 2015

Entity frameworks is the latest buzz in .Net programming and is the data access technology for Microsoft OS based hand held devices and web applications. Learn to integrate EF into an ASP.Net Application and MVC application. Create, explore and query the Entity Data Model. Learn how to use ObjectDataSource control and GridView control in an ASP.Net Application.

Also, learn to build Three-Tier ASP.Net application, create a business-class, implement methods in the class to perform CRUD operations and bind a GridView to the ObjectDataSource control. Learn how to handle concurrency and managing Transactions.

View Contents »