Asp.net mvc 5 ASP.NET MVC中的存储过程

Asp.net mvc 5 ASP.NET MVC中的存储过程,asp.net-mvc-5,Asp.net Mvc 5,如何在mvc中调用此过程 **请解释一下** **stored procedure** 如果我们想使用存储过程,那么需要使用非常安全、平滑和高效的代码优先迁移。因此,请使用以下步骤 第一步 启用迁移 步骤2 现在,数据上下文类将使用存储过程。打开上下文类并更新代码,如下所示: 打开Tools->NuGet Package Manager->Package Manager控制台并输入以下命令: CREATE procedure [dbo].[RegistrationInsert]( @emp

如何在mvc中调用此过程 **请解释一下**

**stored procedure**

如果我们想使用存储过程,那么需要使用非常安全、平滑和高效的代码优先迁移。因此,请使用以下步骤

第一步

启用迁移

步骤2

现在,数据上下文类将使用存储过程。打开上下文类并更新代码,如下所示:

打开Tools->NuGet Package Manager->Package Manager控制台并输入以下命令:

CREATE procedure [dbo].[RegistrationInsert](  
@empEmail nvarchar(max),  
@password nvarchar (max)  
)  
as begin  
insert into [Registration ] ([EmployeeName],[EmployeeEmail],[Password],[PhoneNumber],[Role],[EmployeeID])  
select [EmployeeName],[EmployeeMailID],@password,[EmployeePhoneNumber],[EmployeeDesignation],[EmployeeID]  
from [Employeedata ]  
where [EmployeeMailID] = @empEmail  
end  
GO 
构建解决方案。现在,在Package Manager控制台中输入以下命令:

CREATE procedure [dbo].[RegistrationInsert](  
@empEmail nvarchar(max),  
@password nvarchar (max)  
)  
as begin  
insert into [Registration ] ([EmployeeName],[EmployeeEmail],[Password],[PhoneNumber],[Role],[EmployeeID])  
select [EmployeeName],[EmployeeMailID],@password,[EmployeePhoneNumber],[EmployeeDesignation],[EmployeeID]  
from [Employeedata ]  
where [EmployeeMailID] = @empEmail  
end  
GO 
添加迁移MyMovieSP

你可以用任何名字代替MyMovieSP

步骤4

我们需要告诉数据库创建MyMovieSP。因此,只需在Package Manager控制台中输入以下命令

更新数据库


为了更好地理解,请访问完整的文章第1步:创建viewmodel注册表

using System.Data.Entity.Migrations;  

    public partial class MyMovieSP : DbMigration  
    {  
        public override void Up()  
        {  
            CreateStoredProcedure(  
                "dbo.Movie_Insert",  
                p => new  
                    {  
                        Name = p.String(),  
                        ReleaseDate = p.DateTime(),  
                        Category = p.String(),  
                    },  
                body:  
                    @"INSERT [dbo].[Movies]([Name], [ReleaseDate], [Category])  
                      VALUES (@Name, @ReleaseDate, @Category)  

                      DECLARE @ID int  
                      SELECT @ID = [ID]  
                      FROM [dbo].[Movies]  
                      WHERE @@ROWCOUNT > 0 AND [ID] = scope_identity()  

                      SELECT t0.[ID]  
                      FROM [dbo].[Movies] AS t0  
                      WHERE @@ROWCOUNT > 0 AND t0.[ID] = @ID"  
            );
        }
public override void Down()  
        {   
            DropStoredProcedure("dbo.Movie_Insert");  
        } 
}
步骤2:从数据库添加ADO.Net EntityModel

添加一个表和存储过程

步骤3:为数据库创建对象,如

public class Register 
{
    [Display(Name = "E-mail")]
    [Remote("IsUserNameAvailable", "User", ErrorMessage = "Email Already 
     Exists")]
    [Required(AllowEmptyStrings = false, ErrorMessage = "Email is Required")]
    public string EmployeeEmail {get;set;}

    [Required(AllowEmptyStrings = false, ErrorMessage = "Password is 
    Required")]
    [Display(Name = "Password")]
    [MinLength(6, ErrorMessage = "Minimum 6 Characters")]
    public string Password { get; set; }
}
步骤4:创建Razorview:


您所需要的一切,都可以在这里免费学习:这与存储过程无关,也不是您问题的答案。这是一个完美的答案。这对我来说没问题,请检查一下。试试看。这个答案不能回答你的问题。是的,代码可能在您的机器上工作,但这并不意味着阅读此答案的其他人可以用它做任何事情。解释如何使方法db.RegistrationSert起作用。请检查一次
Database db = new Database();

public ActionResult Register(Register view)
{
    Database db = new Database();
    string message = "";
    db.RegistrationInsert(empEmail: view.EmployeeEmail, password: 
    view.Password);
    ViewBag.Message = "Registered Successfully";
    return View();
}