Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / web / ASP.NET

Using Stored Procedures in Entity Framework Model First Approach (Part I - Adding New Stored Procedure)

5.00/5 (4 votes)
15 Apr 2014CPOL2 min read 43.1K  
How to use Stored Procedures in Entity Framework Model First Approach

Before starting with this article, I expect that you have a basic idea on the Entity Framework - Model First approach and its use.

Here, I am explaining the step by step approach on how to use a newly created stored procedure in our C# code through the EntiFramework. Let's say we have created a new procedure named as 'GetAllPersons', now we can follow the below steps:

STEP I

(Open EDMX file right click and choose the option 'Update Model from Database...')

Image 1

STEP II

Now in this below screen choose save entity connection string in Web.Config as the name given at the time of creation. Then click on NEXT.

Image 2

STEP III

Select 'Add' tab and there select the particular stored procedure you want to add to entity model.

Unselect the option 'Pluralize or singularize object names' and click on FINISH button.

Image 3

STEP IV

Rename the Entity added automatically.

Open the Model Browser now and we can see the 3 things added automatically in entity model like:

  • StoredProcedure - The procedure we added recently.
  • Function Import - Function which actually will be called in code by the object of the entity context.
  • ComplexType - The entity returned by the SP or the Function generated.

The Function and ComplexType can be renamed as we want them.

Image 4

Rename the ComplexType name as our feasibility:

Image 5

Image 6

STEP V

Edit the Function Import as per requirement.

Open the function import in EDIT mode.

Image 7

Rename the function and select appropriate Stored Procedure and ComplexType.

Image 8

After editing done:

Image 9

STEP VI

Finish & Run Custom Tool.

Now after all the changes are being made to make the latest change available in code, we have to run the custom tool as mentioned in the below image. This step is to update the classes from the model to avail latest changes made to it in code behind.

Image 10

For more information on this custom tool and tt files, please refer to the description here.

STEP VII

Get result in code file.

To get the list of all the Persons as returned by the function imported:

Create the object of the Entity context class:

C#
Test_SPEntities objTestSPEntity = new Test_SPEntities();

Call the function and get the result as list of the particular Complex Type:

C#
List<GetAllPersonsEntity> listAllPersons = objTestSPEntity.GetAllPersons().ToList();

Hope this will definitely be of help for the guys who just started with the basics of the Entity Framework.

License

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