Eu sei que é uma resposta tardia, mas achei útil compartilhar.
Agora em EF6 é mais fácil conseguir isso usando
dbContext.Database.BeginTransaction()
assim :
using (var context = new BloggingContext())
{
using (var dbContextTransaction = context.Database.BeginTransaction())
{
try
{
// do your changes
context.SaveChanges();
// do another changes
context.SaveChanges();
dbContextTransaction.Commit();
}
catch (Exception)
{
dbContextTransaction.Rollback();
}
}
}
para obter mais informações, consulte este
novamente está no EF6 em diante