Home > DeveloperSection > Blogs > Insert value using entity framework in MVC4 with stored procedure mapping

Insert value using entity framework in MVC4 with stored procedure mapping


ASP.NET MVC ASP.NET MVC 
Ratings:
0 Comment(s)
 12086  View(s)
Rate this:

Insert value using entity framework in MVC4 with stored procedure mapping

In this blog I'm trying to explain the concept of how to insert a value in a table using stored procedure mapping in entity framework.

Getting Started

Create a table and its stored procedure

Customer Table

CREATE TABLE [dbo].[Customer](

       [CustID] [int] IDENTITY(1,1) NOT NULL,

       [Name] [varchar](100) NULL,

       [Address] [varchar](200) NULL,

       [ContactNo] [varchar](20) NULL,

)

 Customer Table Insert Stored Procured

CREATE PROCEDURE usp_InsertCustomer

       -- Add the parameters for the stored procedure here

       @Name varchar(100),

          @Address varchar(200),

          @ContactNo varchar(20)

AS

BEGIN

       -- SET NOCOUNT ON added to prevent extra result sets from

       -- interfering with SELECT statements.

       SET NOCOUNT ON;

    -- Insert statements for procedure here

       INSERT INTO [dbo].[Customer]

           ([Name]

           ,[Address]

           ,[ContactNo])

         

     VALUES

           (@Name ,

               @Address,

               @ContactNo)

END

GO

Getting stared with visual studio 2012

Note: After creating customer table and its procedure open visual studio and create a simple MVC application.

After creating MVC application go to Model folder in solution explorer and add an ADO.NET Entity Data Model (Read this article to add an entity framework http://www.mindstick.com/Articles/6dfea253-4698-4eb8-ab20-57d2aa61753a/?Fetch%20Data%20from%20Entity%20Framework%20Using%20ASP.NET%20MVC4)

After adding ADO.NET Entity Data Model need to mapping the stored procedure, below the steps of  mapping the stored procedure in entity framework: -

1.       Right Click on Entity Framework and select the Stored Procedure Mapping.

       

2.       After selecting Stored Procedure Mapping below screen will be appear and the select the sp_InsertCustomer.

      

3.       After selecting sp_InsertCustomer stored procedure below screen will be appear. Then Clear and build your   solution.

      

After doing above steps write the code in HomeController

HomeController

DEMOEntities demoEntity = new DEMOEntities();//Here i'm create My entity global object

public ActionResult Index()

{

     return View();

}

[HttpPost]

public ActionResult Index(Customer customer)

{

     demoEntity.Customers.Add(customer);

     demoEntity.SaveChanges();

     ViewBag.Message = "Record Inserted!";

     return View();

}

View

@model WebGridMvc.Models.Customer

@using (Html.BeginForm("Index", "Home", FormMethod.Post, new { @id = "frmSaveData"}))

{

 <table>

        <tr>

            <td>@Html.Label("Customer Name")</td>

            <td>@Html.TextBoxFor(m => m.Name)</td>

        </tr>

        <tr>

            <td>@Html.Label("Customer Address")</td>

            <td>@Html.TextBoxFor(m => m.Address)</td>

        </tr>

        <tr>

            <td>@Html.Label("Customer Contact")</td>

            <td>@Html.TextBoxFor(m => m.ContactNo)</td>

        </tr>

        <tr>

            <td>

                <div style="color: red; font-size: larger;">@ViewBag.Message</div>

            </td>

            <td>

                <input type="submit" /></td>

        </tr>

    </table>

}


Don't want to miss updates? Please click the below button!

Follow MindStick