title: NHibernate with TransactionScope
body: <p>Can anyone give me a quick overview of using TransactionScope with NHibernate? Do I need to do anything special with the session/IEnlistmentNotification/etc. to get this to work? Are there any pitfalls that I should worry about? For example, can I replace all of my hibernate transactions:</p>
  
  <pre><code>var transaction = session.BeginTransaction();
  try
  {
      // code
      transaction.Commit();
  }
  catch (Exception)
  {
      transaction.Rollback();
  }
  </code></pre>
  
  <p>with this?:</p>
  
  <pre><code>using (var scope = new TransactionScope())
  {
      // code
      scope.Complete();
  }
  </code></pre>