SaveChanges 方法在 EntityFramework 中如何工作?

How SaveChanges method works in EntityFramework?

我正在使用 EntityFramework 和 PostgreSQL 开发桌面应用程序,由于 ef 不处理数据库权限,我想知道 SaveChanges() 是否会更新整行或仅更新修改列? (行更新后删除外键的问题)

EntityFramework dbContext savechanges 将尝试填充您的 orm 映射项的更改状态

有一个 look at this 的 EF 样本。

根据您的 driver 实施可能会有所不同。

SaveChanges() 方法用于保存对数据库上下文所做的所有尚未推送到数据库的更改,换句话说,将自上次调用 SaveChanges 以来对上下文所做的所有更改保存在数据库中() 发生了。

该方法将数据保存为上下文中当前可用的数据,这意味着如果对象模型的 属性 设置为 NULL,它将更新整行,而不仅仅是您更改的列, 框架将尝试在数据库的映射列中保存 NULL。