> 实体框架6代码优先:集成存储过程
>
>在您的>'s 中,使用DbContext
将实体与相应的存储过程链接。 指定每个操作的过程名称和参数(插入,更新,删除)。OnModelCreating
>
MapToStoredProcedures
>执行存储过程的方法。 提供过程名称和输入参数。如果该过程返回数据,请将结果投放到您的实体类型。>
Database.SqlQuery
>让我们假设一个实体。 以下代码演示了使用存储过程插入部门的:
Department
此
<code class="language-csharp">public class DepartmentContext : DbContext { protected override void OnModelCreating(DbModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); modelBuilder.Entity<Department>() .MapToStoredProcedures(s => { s.Insert(i => i.HasName("insert_department") .Parameter(b => b.Name, "department_name")); // Add mappings for UPDATE and DELETE procedures here }); } public void InsertDepartment(string departmentName) { var result = this.Database.SqlQuery<Department>( "EXEC insert_department @department_name", new SqlParameter("@department_name", departmentName)); } }</code>
InsertDepartment
insert_department
重要的考虑因素:
多个结果集:
请咨询MSDN文档,以处理存储过程返回多个结果集。以上是如何在实体框架6代码优先的情况下调用存储过程?的详细内容。更多信息请关注PHP中文网其他相关文章!