EF 数据库.BeginTransaction 行为

问题描述 投票:0回答:1

以下条件下会发生什么?

//Open a transaction
using var transaction = _context.Database.BeginTransaction();

// do stuff without calling Commit or Rollback

return;

这是否会因为未提交或回滚创建的事务而创建处于故障状态的数据库连接?

entity-framework transactions
1个回答
0
投票

这是否会因为未提交或回滚创建的事务而创建处于故障状态的数据库连接?

不。当您处置 DbContext 时,事务将回滚。如果您不处理 DbContext,则打开的连接将位于托管堆上,直到将来某个时刻对其进行 GC,此时事务将回滚。但这可能需要几个小时或几天。

© www.soinside.com 2019 - 2024. All rights reserved.