Os dois são equivalentes. Usar um objeto SqlTransaction permite que você coloque a transação em um
using
alcance:using(SqlTransaction trn = conn.BeginTransaction ())
{
...
trn.Commit ();
}
Este é um padrão melhor na presença de exceções.
using
alcance:using(SqlTransaction trn = conn.BeginTransaction ())
{
...
trn.Commit ();
}