Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds

ADO.NET Entity Framework

Save for later
  • 6 min read
  • 23 Oct 2009

article-image

Creating an Entity Data Model


You can create the ADO.NET Entity Data Model in one of the two ways:

  • Use the ADO.NET Entity Data Model Designer
  • Use the command line Entity Data Model Designer called EdmGen.exe


We will first take a look at how we can design an Entity Data Model using the ADO.NET Entity Data Model Designer which is a Visual Studio wizard that is enabled after you install ADO.NET Entity Framework and its tools. It provides a graphical interface that you can use to generate an Entity Data Model.

Creating the Payroll Entity Data Model using the ADO.NET Entity Data Model Designer


Here are the tables of the 'Payroll' database that we will use to generate the data model:

  • Employee
  • Designation
  • Department
  • Salary
  • ProvidentFund


To create an entity data model using the ADO.NET Entity Data Model Designer, follow these simple steps:

adonet-entity-framework-img-0


    1. Open Visual Studio.NET and create a solution for a new web application project as seen below and save with a name.

adonet-entity-framework-img-1adonet-entity-framework-img-2


    1. Switch to the Solution Explorer, right click and click on Add New Item as seen in the following screenshot:

adonet-entity-framework-img-3


    1. Next, select ADO.NET Entity Data Model from the list of the templates displayed as shown in the following screenshot:

adonet-entity-framework-img-4


 

    1. Name the Entity Data Model PayrollModel and click on Add.
    2. Select Generate from database from the Entity Data Model Wizard as shown in the following screenshot:

adonet-entity-framework-img-5


Note that you can also use the Empty model template to create the Entity Data Model yourself.

If you select the Empty Data Model template and click on next, the following screen appears:

adonet-entity-framework-img-6


As you can see from the above figure, you can use this template to create the Entity Data Model yourself. You can create the Entity Types and their relationships manually by dragging items from the toolbox. We will not use this template in our discussion here. So, let's get to the next step.

    1. Click on Next in the Entity Data Model Wizard window shown earlier.
    2. The modal dialog box will now appear and prompts you to choose your connection as shown in the following figure:

adonet-entity-framework-img-7


    1. Click on New Connection Now you will need to specify the connection properties and parameters as shown in the following figure:

adonet-entity-framework-img-8

We will use a dot to specify the database server name. This implies that we will be using the database server of the localhost, which is the current system in use.


    1. After you specify the necessary user name, password, and the server name, you can test your connection using the Test Connection button. When you do so, the message Test connection succeeded gets displayed in the message box as shown in the previous figure.
    2. When you click on OK on the Test connection dialog box, the following screen appears:
      <connectionStrings> 
      <add name="PayrollEntities" connectionString="metadata=res:// *;
      provider=System.Data.SqlClient;provider connection string=&quot;
      Data Source=.;Initial Catalog=Payroll;User ID=sa;Password=joydip1@3;
      MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" /> 
      </connectionStrings>

adonet-entity-framework-img-9


Note the Entity Connection String generated automatically. This connection string will be saved in the ConnectionStrings section of your application's web.config file. This is how it will look like:

Unlock access to the largest independent learning library in Tech for FREE!
Get unlimited access to 7500+ expert-authored eBooks and video courses covering every tech area you can think of.
Renews at $19.99/month. Cancel anytime
    1. When you click on Next in the previous figure, the following screen appears:

adonet-entity-framework-img-10


  1. Expand the Tables node and specify the database objects that you require in the Entity Data Model to be generated as shown in the following figure:

    adonet-entity-framework-img-11

  2. Click on Finish to generate the Entity Data Model.


Here is the output displayed in the Output Window while the Entity Data Model is being generated:

adonet-entity-framework-img-12


Your Entity Data Model has been generated and saved in a file named PayrollModel.edmx. We are done creating our first Entity Data Model using the ADO.NET Entity Data Model Designer tool.

When you open the Payroll Entity Data Model that we just created in the designer view, it will appear as shown in the following figure:

adonet-entity-framework-img-13


Note how the Entity Types in the above model are related to one another. These relationships have been generated automatically by the Entity Data Model Designer based on the relationships between the tables of the Payroll database.

In the next section, we will learn how we can create an Entity Data Model using the EdmGen.exe command line tool.

Creating the Payroll Data Model Using the EdmGen Tool


We will now take a look at how to create a data model using the Entity Data Model generation tool called EdmGen.

The EdmGen.exe command line tool can be used to do one or more of the following:

  • Generate the .cdsl, .msl, and .ssdl files as part of the Entity Data Model
  • Generate object classes from a .csdl file
  • Validate an Entity Data Model


The EdmGen.exe command line tool generates the Entity Data Model as a set of three files: .csdl, .msl, and .ssdl. If you have used the ADO.NET Entity Data Model Designer to generate your Entity Data Model, the .edmx file generated will contain the CSDL, MSL, and the SSDL sections. You will have a single .edmx file that bundles all of these sections into it. On the other hand, if you use the EdmGen.exe tool to generate the Entity Data Model, you would find three distinctly separate files with .csdl, .msl or .ssdl extensions.

Here is a list of the major options of the EdmGen.exe command line tool:















Option Description
/help Use this option to display help on all the possible options of this tool. The short form is /?
/language:CSharp Use this option to generate code using C# language
/language:VB Use this option to generate code using VB language
/provider:<string> Use this option to specify the name of the ADO.NET data provider that you would like to use.
/connectionstring:

<connection string>
Use this option to specify the connection string to be used to connect to the database
/namespace:<string> Use this option to specify the name of the namespace
/mode:FullGeneration Use this option to generate your CSDL, MSL, and SSDL objects from the database schema
/mode:EntityClassGeneration Use this option to generate your entity classes from a given CSDL file
/mode:FromSsdlGeneration Use this option to generate MSL, CSDL, and Entity Classes from a given SSDL file
/mode:ValidateArtifacts Use this option to validate the CSDL, SSDL, and MSL files
/mode:ViewGeneration Use this option to generate mapping views from the CSDL, SSDL, and MSL files