title: Why to use using statement on DbTransaction in ADO.NET / C#?
body: <p>I understood the implicit rollback (that usually happens when exception happens and Dispose is called) is not guaranteed for all providers. However many examples uses:</p>
  
  <pre><code>using (DbTransactio txn = cnctn.BeginTransaction())
  </code></pre>
  
  <p>is there a reason for that?</p>