代码之家  ›  专栏  ›  技术社区  ›  Aviko

使用时是否需要调用SaveChangesEFCore.BulkExtensions文件

  •  2
  • Aviko  · 技术社区  · 7 年前

    (见 https://github.com/borisdj/EFCore.BulkExtensions/

            using (var db = new ReportingContext())
            {
                db.BulkInsertOrUpdate(entities);
                db.SaveChanges();
            }
    

    或者这就足够了?

            using (var db = new ReportingContext())
            {
                db.BulkInsertOrUpdate(entities);
            }
    
    1 回复  |  直到 7 年前
        1
  •  9
  •   Ivan Stoev    7 年前

    链接中的页面包含以下内容

    引擎盖下使用 SqlBulkCopy 对于Insert,对于Update/Delete,将Insert与原始Sql相结合 MERGE

    SaveChanges 因为EFCore.BulkExtensions文件直接使用数据库(SqlServer)。您传递的实体甚至可能不会附加(跟踪)到上下文。它只使用上下文来获取实体模型元数据和连接/事务信息。

    推荐文章