使用EF来批量新增数据,发现效率很是的差,几千条数据时甚至须要几分钟来执行,迫于无奈使用sql来执行了。html
今天偶然看到一篇关于EF的文章,才发觉原来是本身对EF不够了解的缘由。sql
通常新增时咱们是将全部的记录都添加到了同一个上下文中了,EF会对咱们新增的这些记录进行追踪,随着咱们增长的记录愈来愈多,EF追踪的对象图天然就愈来愈大了,而后对咱们来讲效率就会飞速降低。htm
解决办法对象
1是能够关闭自动调用context.Configuration.AutoDetectChangesEnabled=falseblog
2是使用多个上下文进行批量新增get