我使用MS数据访问应用程序块与数据库进行交互,并且看到它的性能很好。当我想添加100条或更多条记录时,我将这100条记录以xml格式发送到存储过程,然后从那里进行批量插入。现在,我必须使用实体框架。我以前从未使用过EF,所以我对EF及其工作原理并不熟悉。
在另一个论坛中,我问了一个问题,例如“在批量插入和更新数据的情况下Entity Framework是如何工作的”,并得到了答案
根据我的经验,EF不支持批量插入或批量更新。
它的作用是发出一个单独的insert或update语句,但是如果在调用SaveChanges()之前将所有更改添加到dbcontect中,则它将所有这些包装在事务中。
EF是否可以处理批量插入/更新,这是真的吗?如果是批量插入/更新,EF是否在循环中插入数据?如果有100条记录需要一次提交,那么EF不能这样做吗?
如果不正确,请指导我如何编写代码,以使EF可以批量插入/更新。还请告诉我技巧,如何查看它将生成哪种SQL。
如果可能的话,请指导我使用EF进行批量插入/更新的示例代码。还告诉我哪个版本的EF支持真正的批处理操作。谢谢
是EF不是批量加载,更新工具。当然,您可以输入一些K项并提交(SaveChanges),但是当速度非常重要时,请使用SQL。
请参阅批量更新/删除EF5作为该主题的示例
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句