首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

Entity Framework大批量平添数据,效率低

2012-12-29 
Entity Framework大批量添加数据,效率低用EF一次新增2000多条数据的时候,居然需要10多分钟。。请问这个可以

Entity Framework大批量添加数据,效率低
用EF一次新增2000多条数据的时候,居然需要10多分钟。。请问这个可以怎么优化?
主实体
MainEntity:
ID
List<Detail> Details
Created
子实体。
Detail:{....}

我这用EF当Details有2000多条数据就卡住了。。悲剧。。.
请问有好的解决办法吗?
[解决办法]
把你的新增代码发来看看
[解决办法]
首次运行吗?

首次运行肯定会慢点

你多试几次 看看最短需要多长时间
[解决办法]
可以拼接成insert sql语句
然后使用entity.executeStoreCommand来执行~
[解决办法]
不要每次都建新的 context,打开一个事务,添加2000条,SaveChanges,提交事务,可以好一点。


[解决办法]
什么操作要一次插入2000条,这本身就是个悲剧。
[解决办法]


public virtual int Add(MainEntity entity)
        {
            entity.Validate();

            using (var context = new KFPOS2HQEntities())
            {
                context.MainEntities.ApplyChanges(entity);
                return context.SaveChanges();
            }
        }
你不要每次都saveChanges一次,创建一个事务,2000条add完成了以后再save应该会比较快一些喔,而且,context = new KFPOS2HQEntities()你不要每次都去new啊亲,这样很耗费时间的

热点排行