以下条件下会发生什么?
//Open a transaction
using var transaction = _context.Database.BeginTransaction();
// do stuff without calling Commit or Rollback
return;
这是否会因为未提交或回滚创建的事务而创建处于故障状态的数据库连接?
这是否会因为未提交或回滚创建的事务而创建处于故障状态的数据库连接?
不。当您处置 DbContext 时,事务将回滚。如果您不处理 DbContext,则打开的连接将位于托管堆上,直到将来某个时刻对其进行 GC,此时事务将回滚。但这可能需要几个小时或几天。