title: Using Transactions or SaveChanges(false) and AcceptAllChanges()?
body: <p>I have been investigating transactions and it appears that they take care of themselves in EF as long as I pass <code>false</code> to <code>SaveChanges()</code> and then call <code>AcceptAllChanges()</code> if there are no errors:</p>
  
  <pre><code>SaveChanges(false);
  // ...
  AcceptAllChanges();
  </code></pre>
  
  <p>What if something goes bad? don't I have to rollback or, as soon as my method goes out of scope, is the transaction ended?</p>
  
  <p>What happens to any indentiy columns that were assigned half way through the transaction? I presume if somebody else added a record after mine before mine went bad then this means there will be a missing Identity value.</p>
  
  <p>Is there any reason to use the standard <code>TransactionScope</code> class in my code?</p>