title: EF6 wraps every single stored procedure call in its own transaction. How to prevent this?
body: <p>Profiled with SQL Server Profiler: EF 6 wraps every single stored procedure call with <code>BEGIN TRAN</code> and <code>COMMIT TRAN</code>. </p>
  
  <p>Is not it a breaking change?</p>
  
  <p>Maybe it is not only a breaking change, but makes any transactional logic impossible in SPs as we <em>never</em> can rollback our transaction in the stored procedure using <code>ROLLBACK TRAN</code> (note: there are no nested transactions in SQL Server), so one rollback rollbacks to <code>@@TRANCOUNT</code> zero. As we were in a transaction because EF 6 we got "Transaction count after EXECUTE indicates a mismatching number of BEGIN and COMMIT statements. Previous count = 1, current count = 0." standard SQL Server error.</p>
  
  <p>Please do not ask me why I want to call stored procedures. I have hundreds, and all of them are using <code>TRY ... COMMIT ... CATCH ROLLBACK</code> logic.</p>
  
  <p>Any ideas how can I prevent EF 6 to do this? </p>