(见 https://github.com/borisdj/EFCore.BulkExtensions/
using (var db = new ReportingContext()) { db.BulkInsertOrUpdate(entities); db.SaveChanges(); }
或者这就足够了?
using (var db = new ReportingContext()) { db.BulkInsertOrUpdate(entities); }
链接中的页面包含以下内容
引擎盖下使用 SqlBulkCopy 对于Insert,对于Update/Delete,将Insert与原始Sql相结合 MERGE
SaveChanges 因为EFCore.BulkExtensions文件直接使用数据库(SqlServer)。您传递的实体甚至可能不会附加(跟踪)到上下文。它只使用上下文来获取实体模型元数据和连接/事务信息。
SaveChanges