Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

EF :Comment puis-je appeler SaveChanges deux fois dans une transaction ?

Je sais que c'est un peu tard, mais j'ai trouvé utile de partager.

Maintenant en EF6 il est plus facile d'y parvenir en utilisant dbContext.Database.BeginTransaction()

comme ça :

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();
        }
    }
}

pour plus d'informations, consultez ceci

encore une fois, c'est dans EF6 et suivants