.net EF代码首先插入多行

.net EF代码首先插入多行,.net,entity-framework,code-first,.net,Entity Framework,Code First,我首先使用EF代码,我需要在一个表中插入许多行,数千条记录,我在一个通用列表中。只需执行一个foreach循环并将每个实体添加到表中,然后使用SaveChanges()完成即可,这需要相当长的时间 是否有一种庞大的方法可以先使用EF或代码来完成这项工作,或者我应该使用SqlCommand或SqlBulkCopy来代替?另外,我是否可以在EF代码中先关闭一些东西以加快插入速度 谢谢你的帮助 您可以少调用SaveChanges() 但是,使用EF所能做的任何事情都无法达到SqlBulkCopy这样的

我首先使用EF代码,我需要在一个表中插入许多行,数千条记录,我在一个通用列表中。只需执行一个foreach循环并将每个实体添加到表中,然后使用SaveChanges()完成即可,这需要相当长的时间

是否有一种庞大的方法可以先使用EF或代码来完成这项工作,或者我应该使用SqlCommand或SqlBulkCopy来代替?另外,我是否可以在EF代码中先关闭一些东西以加快插入速度


谢谢你的帮助

您可以少调用
SaveChanges()


但是,使用EF所能做的任何事情都无法达到SqlBulkCopy这样的性能。

+1 ORM从来没有也永远不会是批量操作的性能解决方案。只需执行dbContext.Entityname.Add()4000次,需要20-30秒。循环超过10秒后,SaveChanges()将更改。可能是SqlBulkCopy…我希望我能得到更多关于如何先用EF代码更快地插入行的提示,但我想这是不可行的。