Monday, December 24, 2018

C# ASP MVC, Entity framework Getting total count from stored procedure passing parameters

C# ASP MVC, Entity framework Getting total count from stored procedure passing parameters

Consider Table:
Student: columns (Id, Name, Gender, EmployeeType)


Create Stored Procedure:
alter Procedure sp_GetEmployeeTypeCount @EmployeeType int, @Total int Output
as
Begin
       select @Total = Count(*) from student where EmployeeTypeId = @EmployeeType
end

Try executing Stored Procedure:
declare @Name int
exec sp_GetEmployeeTypeCount 2, @Name Out
print @Name


Add this Stored Procedure to Your Model(.edmx)
Create controller and use context instance, pass parameter to stored procedure as mentioned.

public class TestController:Controller
    {
        EntitiesDbContext db = new EntitiesDbContext();
        public ActionResult Index()
        {
            var parameter = new ObjectParameter("Total", typeof(int));
            db.sp_GetEmployeeTypeCount(1,parameter);
            var val1 = parameter.Value;

            var parameter2 = new ObjectParameter("Total", typeof(int));
            db.sp_GetEmployeeTypeCount(2, parameter2);
            var val2 = parameter2.Value;
            return View();
  }
}

No comments:

Post a Comment