sql - 多个原始更新命令的实体框架事务
问题描述
我是使用 Postgresql 实体框架事务的新手。我需要执行多个UPDATE
查询。
using (DbContextTransaction transaction = context.Database.BeginTransaction())
{
try
{
context.Database.ExecuteSqlCommand("Update table1 ....");
context.Database.ExecuteSqlCommand("Update table2 ....");
context.Database.ExecuteSqlCommand("Update table3 ....");
transaction.Commit();
}
catch (Exception ex)
{
transaction.Rollback();
}
}
问题:
- 我应该
context.SaveChanges()
对所有更新命令使用方法吗? - 如果 table2 或 table3 命令失败,table1 命令会回滚吗?
解决方案
推荐阅读
- python - 禁用特定扩展显示的 vscode 工具提示提示
- javascript - 导入 winston 导致“未定义进程”
- html - 如何使 CSS 背景颜色到屏幕边缘?
- ios - 为什么我的 iOS 应用会自动启动?
- three.js - 我们可以将 ThreeJs Helpers 与 InstancedMeshes 一起使用吗?
- django - DJANGO - 管理员操作
- mongodb - Mongodb - 基于特定属性合并嵌套子文档数组
- node.js - 如何使用 app.use 添加新的 Node.js 路由
- javascript - 如何在 JavaScript 中按顺序执行这两个不同的代码块?
- python - 如何创建 Django 首选项(站点仪表板)