Click here to Skip to main content
13,045,790 members (47,504 online)
Click here to Skip to main content
Add your own
alternative version


32 bookmarked
Posted 4 May 2012

Quickest Way to Create a .NET Database Application

, 4 May 2012
Rate this:
Please Sign up or sign in to vote.
Tip to create a database application using C# .NET in the shortest time possible.

1. Introduction

1.1 Summary

This article shows you the quickest way to create a C# .NET database application using .NET Framework 4.0, Visual Studio 2010 and SQL Server 2008 Express. 

1.2 Purpose

There are many approaches to creating a database application using .NET. This article concentrates on demonstrating the fastest approach available. In addition, it concentrates on utilizing the power of .NET by writing as little code as possible. For those interested in source code, you can download it from here

2. Programming Language and Tools

  1. .NET Framework 4.0
  2. C#
  3. Visual Studio 2010
  4. SQL Express 2008

3. Application

3.1 Functionality exposed in User Interface

The article demonstrates creating a simple application that stores customer information in a SQL Express 2008 database. To keep things simple, only the following functionality will be implemented in the User Interface.

  • Search By Database Field
  • First, Previous, Next, Last customer record traversal
  • Add/Edit/Delete customer information
  • List View and Detail View  

3.2 Step 1: Create C# .NET Solution and Project

Follow the steps below to create a .NET solution and project.


  • Open Visual Studio 2010.
  • Select File à New Project.
  • Type the name of the project as CMS (short for Customer Management System).
  • Click OK 

3.3 Step 2: Create the database

The following table and fields should be created in the SQL Express database. 

Table Name: Customer 



Primary Key



Not Null



Not Null  




To create the SQL Express database follow the steps outlined below.

  • Within Visual Studio 2010, right click on the Project "CMS".
  • Select Add -> New Item.
  • The Add New Item dialog is displayed.
  • Select Data -> Service-based Database. 
  • Type the name of the database as CMS.mdf.
  • Click Add.
  • Click Cancel in the Data Source Configuration Wizard dialog.
  • Double click on the CMS.mdf file in the Solution Explorer.
  • The database opens in the Server Explorer window as shown in the screenshot below. 
  • Right-click on the Tables node and select Add New Table item.
  • Enter the fields listed above and save the table as "Customer".  

3.4 Step 3: Design the User Interface

  • Rename the Form1 class/file as CustomerDetails. 
  • Design the UI by dragging and dropping controls from the toolbox.
  • The control names are specified in the screenshot below. 


  1. Remember to save changes to the form at frequent intervals while designing. This would help prevent losing work just in case something goes wrong.
  2. cMSDataSet and customerTableAdapter is automatically added by .NET during the process of data binding. 


  • After you have finished designing, drag and drop the BindingSource control from the Toolbox onto the form. 
  • Select BindingSource control (displayed near OpenFileDialog control) and open Properties window by pressing the F4 function key.
  • In the properties window, select DataSource and click on the down arrow.
  • Select "Add Project Data Source…" hyperlink to open the "Data Source Configuration Wizard" window. 

  • Select "Database" and click on the Next button.

  • Select "Dataset" and click on the Next button. 

  • Select "New Connection" to open the "Add Connection" dialog.
  • Click "Browse" and select the CMS.mdf file.
  • Click "Test Connection" to verify if the connection succeeds.
  • If the connection doesn’t succeed, verify the following:
  1. SQL Server is running.
    1. To verify this, go to Start -> Settings -> Control Panel -> Administrative Tools -> Services. 
    2. In Services window, check if "SQL Server (SQLEXPRESS)" service is started. If not start it. 
  2. Database is already open in Server Explorer in Visual Studio. In this case, disconnect the connection by right clicking on the CMS.mdf node in Server Explorer and selecting "Close Connection".
  • Once the connection succeeds, click OK. You should see the following information.
  • Make sure the connection string is correct before proceeding further. If yes, and click on the Next button.
  • Check the option "Yes, save the connection as:" and click on the Next button.
  • Select the "Customer" table and click on the Finish button.
  • On clicking finish  
  1. The file CMSDataSet.xsd is added to the project.
  2. The cMSDataSet (CMS.CMSDataSet) control is automatically added to the project.
  3. The following connection string entry is added to the project’s app.config file.
<add name="LineGeneratorForWebsite.Properties.Settings.CMSConnectionString"
Training\ForVideos\CMS\CMS.mdf;Integrated Security=True;Connect Timeout=30; 
User Instance=True"providerName="System.Data.SqlClient" />
  • Set the bindingNavigator’s BindingSource property to bindingSource.
  • Set the below properties for the bindingSource.





  • On setting the above properties, customerTableAdapter control gets automatically added to the project.
  • Add a Label to the bindingNavigator control as shown in the below screenshot and set the text property of the label as "Save". 
  • The end result should be as shown in the below screenshot.
  • Set the below properties for the Search by Field combo box.








First Name

Last Name

  • Set the below properties for the Search Text combo box.









  • Set the below properties for the List box.





  • Set the below properties for the DataGridView.









  • For the TextBoxes (ID, First Name, Last Name) and PictureBox, set the BindingSource for the Text and Image properties respectively as shown in the below screenshot.


3.5 Step 4: Code the event handlers

  • Form Load – CustomerDetails_Load
  1. Set the below properties for the SearchByField and SearchText combo boxes.
  2. cmbSearchByField.SelectedIndex = 0;
    cmbSearchText.DisplayMember = "FirstName";
  3. Fill the cMSDataSet using the customerTableAdapter
  • Save – lblSave_Click
  1. On clicking "Save", end edit.
  2. bindingSource.EndEdit();
  3. Update customer details to the database.
  4. this.customerTableAdapter.Update(this.cMSDataSet.Customer);
  • Changing Search By Field –cmbSearchByField_SelectedIndexChanged
  1. When the SearchByField is changed, set the DisplayMember of the cmbSearchText combo box to the selected field.
cmbSearchText.DisplayMember = 
   (cmbSearchByField.SelectedIndex == 0) ? "FirstName" : "LastName";

Note: By slightly tweaking the code, you can refrain from hard-coding the field names.

  • Loading Images – btnLoadImage_Click
  1. Use the below code to load images to the picture box.
if (openFileDialog1.ShowDialog() == DialogResult.OK)
    pbImage.ImageLocation = openFileDialog1.FileName;

4. Explanation on the Data Controls used in this application

4.1 BindingNavigator

  • For more information on the BindingNavigator control, visit the below page:

4.2 BindingSource

  • For more information on the BindingSource component, visit the below page:

4.3 TableAdapter

  • For more information on the TableAdapter, visit the below page:

4.4 DataSet

  • For more information on the Dataset class, visit the below page:


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Founder Wafy Technologies Pvt Ltd.
India India
Subha Narayanan is the Founder and Director of WAFY Technologies Private Limited, a software development company established in Chennai, India. She has over 13+ years of International Project Management and Programming expertise. She has architected and implemented enterprise solutions for international clients from USA, UK, Europe and Australia. She is also a certified Project Management Professional (PMP) from PMI USA, Member of Project Management Institute, USA. (PMI.Org), Microsoft Certified Trainer, MCTS, MCITP, MCSD (since 2003), MCP (since 1997).

You may also be interested in...


Comments and Discussions

Questionwhere do I put the event handeler coding? Pin
Member 1103053722-Aug-14 17:52
memberMember 1103053722-Aug-14 17:52 
GeneralMy vote of 4 Pin
sukhoi10275-Aug-13 1:30
membersukhoi10275-Aug-13 1:30 
GeneralMy vote of 1 Pin
gaurav27jul28-Jan-13 18:12
membergaurav27jul28-Jan-13 18:12 
QuestionThanks Pin
Nithinjith9-Oct-12 23:37
memberNithinjith9-Oct-12 23:37 
Generalthanks Pin
ceaxar3-Sep-12 22:12
memberceaxar3-Sep-12 22:12 
Questionhelped a lot Pin
R Slater10-May-12 3:10
memberR Slater10-May-12 3:10 
GeneralMy vote of 5 Pin
member605-May-12 0:24
membermember605-May-12 0:24 
GeneralMy vote of 5 Pin
JosephineMatthew4-May-12 19:44
memberJosephineMatthew4-May-12 19:44 
GeneralMy vote of 1 Pin
Bruno Renato4-May-12 9:35
memberBruno Renato4-May-12 9:35 
GeneralRe: My vote of 1 Pin
Subha.N4-May-12 9:48
memberSubha.N4-May-12 9:48 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.170713.1 | Last Updated 4 May 2012
Article Copyright 2012 by Subha.N
Everything else Copyright © CodeProject, 1999-2017
Layout: fixed | fluid