Insert Data Using Code First Approach Fluent API

Introduction

This article shows how to access a SQL Server database with the Entity Framework Code First Approach and later we will also perform an insert data operation.

Create ASP.Net web application

 

Employee.cs

  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Linq;  
  4. using System.Web;  
  5.   
  6. namespace Insert_Data_CFA__Fluent_API  
  7. {  
  8.     public class Employee  
  9.     {  
  10.         public Employee()  
  11.         {  
  12.         }  
  13.   
  14.         public int Id { getset; }  
  15.         public string FirstName { getset; }  
  16.         public string LastName { getset; }  
  17.         public int Age { getset; }  
  18.     }  
  19. }

Employeecontext.cs

  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Data.Entity;  
  4. using System.Linq;  
  5. using System.Web;  
  6.   
  7. namespace Insert_Data_CFA__Fluent_API  
  8. {  
  9.     public class EmployeeContext : DbContext  
  10.     {  
  11.         public EmployeeContext()  
  12.             : base("EmployeeConn")  
  13.         {  
  14.             Database.SetInitializer<EmployeeContext>(new CreateDatabaseIfNotExists<EmployeeContext>());  
  15.         }  
  16.   
  17.         protected override void OnModelCreating(DbModelBuilder modelBuilder)  
  18.         {  
  19.             //Set primary key to Employee table  
  20.             modelBuilder.Entity<Employee>().HasKey(m => m.Id).Property(m => m.Id).IsRequired();  
  21.               
  22.             //First Name is required and Max Length is 50  
  23.             modelBuilder.Entity<Employee>().Property(p => p.FirstName).IsRequired().HasMaxLength(50);  
  24.               
  25.             //Last Name is required and Max Length is 50  
  26.             modelBuilder.Entity<Employee>().Property(p => p.LastName).IsRequired().HasMaxLength(50);  
  27.   
  28.             //Age is required   
  29.             modelBuilder.Entity<Employee>().Property(p => p.Age).IsRequired();  
  30.         }  
  31.   
  32.         public DbSet<Employee> Employees { getset; }  
  33.     }  
  34. }

Web.config

  1. <connectionStrings>  
  2.    <add name="EmployeeConn"  
  3.    connectionString="Data Source=WIN-B4KJ8JI75VF;Initial Catalog=EmployeeDB;Integrated Security=true"  
  4.    providerName="System.Data.SqlClient"/>  
  5.  </connectionStrings>

Webform1.aspx

  1. <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="Insert_Data_CFA__Fluent_API.WebForm1" %>  
  2.   
  3. <!DOCTYPE html>  
  4.   
  5. <html xmlns="http://www.w3.org/1999/xhtml">  
  6. <head runat="server">  
  7.     <title></title>  
  8. </head>  
  9. <body>  
  10.     <form id="form1" runat="server">  
  11.         <div>  
  12.             <table>  
  13.                 <tr>  
  14.                     <td>  
  15.                         <asp:Label ID="Label1" runat="server" Text="Insert Data CFA - Fluent API" Font-Bold="true"></asp:Label>  
  16.                     </td>  
  17.                 </tr>  
  18.             </table>  
  19.             <br />  
  20.             <br />  
  21.             <table>  
  22.                 <tr>  
  23.                     <td>  
  24.                         <asp:Label ID="Label2" runat="server" Text="Please Enter FirstName: " ForeColor="Brown"  
  25.                             Font-Bold="true" Font-Italic="true"></asp:Label>  
  26.                     </td>  
  27.                     <td>  
  28.                         <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>  
  29.                     </td>  
  30.                 </tr>  
  31.                 <tr>  
  32.                     <td>  
  33.                         <asp:Label ID="Label3" runat="server" Text="Please Enter LastName: " ForeColor="Brown"  
  34.                             Font-Bold="true" Font-Italic="true"></asp:Label>  
  35.                     </td>  
  36.                     <td>  
  37.                         <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>  
  38.                     </td>  
  39.                 </tr>  
  40.                 <tr>  
  41.                     <td>  
  42.                         <asp:Label ID="Label4" runat="server" Text="Please Enter Age: " ForeColor="Brown"  
  43.                             Font-Bold="true" Font-Italic="true"></asp:Label>  
  44.                     </td>  
  45.                     <td>  
  46.                         <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>  
  47.                     </td>  
  48.                 </tr>  
  49.                 <tr>  
  50.                     <td colspan="2">  
  51.                         <asp:Button ID="Button1" runat="server" Text="Insert Data"  
  52.                             BackColor="Orange" Font-Bold="true" OnClick="Button1_Click" />  
  53.                         <br />  
  54.                         <br />  
  55.                     </td>  
  56.                 </tr>  
  57.             </table>  
  58.             <br />  
  59.             <br />  
  60.             <table>  
  61.                 <tr>  
  62.                     <td colspan="3">  
  63.                         <asp:Label ID="Label5" runat="server" ForeColor="Red" Font-Bold="true"></asp:Label>  
  64.                     </td>  
  65.                 </tr>  
  66.             </table>  
  67.         </div>  
  68.     </form>  
  69. </body>  
  70. </html>

Webform1.aspx.cs

  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Linq;  
  4. using System.Web;  
  5. using System.Web.UI;  
  6. using System.Web.UI.WebControls;  
  7.   
  8. namespace Insert_Data_CFA__Fluent_API  
  9. {  
  10.     public partial class WebForm1 : System.Web.UI.Page  
  11.     {  
  12.         protected void Page_Load(object sender, EventArgs e)  
  13.         {  
  14.   
  15.         }  
  16.   
  17.         protected void Button1_Click(object sender, EventArgs e)  
  18.         {  
  19.             Label5.Text = String.Empty;  
  20.             EmployeeContext empContext = new EmployeeContext();  
  21.             Employee emp = new Employee() { FirstName = TextBox1.Text, LastName = TextBox2.Text, Age = int.Parse(TextBox3.Text) };  
  22.             empContext.Employees.Add(emp);  
  23.             empContext.SaveChanges();  
  24.             Label5.Text = "Data Inserted Successfully";  
  25.         }  
  26.     }  
  27. }

The following shows the output of the application:

 

Summary

In this article, we saw how to use a SQL Server database with Entity Framework Code First Approach and insert data.

Happy coding!

Up Next
    Ebook Download
    View all
    Learn
    View all
    MVC Corporation is consulting and IT services based company.