When using TransactionScope only (no NH Transaction), auto-flush does not work.
Should it? Looking at SessionImpl.AutoFlushIfRequired in the 3.0 source, it's obvious why auto-flush doesn't work: the method short-circuits if the session is not in a _local_transaction. It does not consider distributed transactions (which in this context include the ambient TransactionScope transaction). Compare SessionImpl.TransactionInProgress to ConnectionManager.IsInActiveTransaction, which does respect distributed transactions. Should SessionImpl.TransactionInProgress call the connection manager method instead of checking this.Transaction.IsActive, or is this behavior intentional?
