我正在映射一个实体以插入存储过程,如下所示:
modelBuilder
.Entity<Member>()
.MapToStoredProcedures(s =>
s.Insert(u => u.HasName("stp_insert_member")));
当我保存新成员时,插件很有效,并将所有参数传递给存储过程。
但是当我尝试更新成员(通过id从db加载实体,更改它的属性,再次保存 - 将发出更新语句的内容)时会发生什么事情,因为它是一个例外,因为它&#39;寻找名为Member_Update
的存储过程。
但是对于那个(以及删除),我不想要存储过程。我只想为insert语句执行存储过程。
我可以将EF映射到存储过程以仅插入操作吗?
答案 0 :(得分:2)
可悲的是它全有或全无。
Entity Framework - Documentation:
您不能对给定实体(或实体层次结构)使用存储过程和直接表访问的混合。插入,更新和删除操作都必须使用直接表访问或存储过程。