1、我们可以在程序的解决方案的引用中选择NuGet管理包中添加该扩展方法提供BulkInsert()方法和BulkSaveChanges()方法可以高效地进行写入操作,因此整体思路是采用BulkInsert()方法来进行插入。
2、整个的插入代码和测试时间如下:var sw = new Stopwatch();sw.Start();if(!contex.Database.Exists())cont髫潋啜缅ex.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语句。