ef批量更新怎么做
1、我们可以在程序的解决方案的引用中选择NuGet管理包中添加该扩展方法提供BulkInsert()方法和BulkSaveChanges()方法可以高效地进行写入操作,因此整体思路是采用BulkInsert()方法来进行插入。

2、整个的插入代码和测试时间如下:var sw = new Stopwatch();sw.Start();if(!contex.Database.Exists())contex.Database.Create();contex.Database.CommandTimeout = 100;contex.BulkInsert(list);contex.BulkSaveChanges();sw.Stop();

3、批量插入:很多时候我们需要向同一数据表插入大量的数据,如果插入一条就调一次SaveChanges这样性能很低,需要频繁地访问数据库。为了解决这个问题,可以使用SqlBulkCopy来批量插入数据,这样很大地提高性能。示例代码如下。

4、单个更新
单个更新很简单,只需要先查询出那条数据,然后修改字段的值,最后SaveChanges就行。

5、我们可以先查找要更新的那些记录,然后遍历修改字段的值,最后调用SaveChanges提交更新。

6、示例代码如下。using (var db = new PackageFHContext()
通过SQL Profiler监控可以看到,最后生成的还是很多的UPDATE语句,也就是说每更新一条就是一个UPDATE语句。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:151
阅读量:184
阅读量:191
阅读量:137
阅读量:50