c# - EF SaveChanges() 背后发生了什么

标签 c# .net entity-framework entity-framework-4 ado.net

假设我有一个域对象,它与其他几个实体有关联(当然映射到多个表)。我对主实体和关联实体进行了更改。当然,EF 必须在保存时在多个表中更新它。

无论是 ObjectContext 还是 DbContext,对 SaveChanges() 方法的调用都会告诉 Entity Framework “将在此上下文中所做的所有更改保存到基础数据库中。”

谁能告诉我“SaveChanges() 背后发生了什么”?

所有生成的 sql 语句 INSERT/UPDATE/DELETE 是否作为准备语句一次性进入数据库?

还是EF和DB来回做sql语句一条一条执行?

EF中是否有任何配置可以在这之间切换?

最佳答案

目前 CUD 操作的语句不是批处理的。我们有一个 work item解决这个问题。随意点赞

关于c# - EF SaveChanges() 背后发生了什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15926252/

相关文章:

c# - 如何使用 EF6 获取大量记录

asp.net-mvc - 无法定义两个对象之间的关系,因为它们附加到不同的ObjectContext对象mvc 2

C# 4 延迟加载和延迟<T>

c# - 如何从不同的组件扩展模型?

c# - 连接到 blob 和 sql 存储的 Azure 函数

.net - 无法访问Docker中的Couchbase Memcached存储桶

c# - 带有 Mysql 和 NullReferenceException 的 Entity Framework 6

C# WebClient HTTPS 身份验证策略

.net - 我在哪里可以获得有关 ! VB.Net 在 Linq to DataSet 中使用的运算符?

.net - 类似于 iPad Facebook 应用的 CSS3 输入