Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

EF:Wie rufe ich SaveChanges zweimal innerhalb einer Transaktion auf?

Ich weiß, es ist eine etwas späte Antwort, aber ich fand es nützlich, sie zu teilen.

Jetzt in EF6 Es ist einfacher, dies zu erreichen, indem Sie dbContext.Database.BeginTransaction() verwenden

so :

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

Weitere Informationen finden Sie unter hier

wieder in EF6 Onwards