{
try
{
var job = new Job{Name = "Name"}
dbContext.Jobs.Add(job);
dbContext.SaveChanges();
var companyJobs = new CompanyJob{Name="Name",JobId = Job.Id};
dbContext.CompanyJobs.Add(companyJobs);
dbContext.SaveChanges();
dbContextTransaction.Commit();
}
catch (Exception)
{
dbContextTransaction.Rollback();
}
}
Another method is using scope, pass TransactionScopeAsyncFlowOption.Enabled to TransactionScope() constructor to allow async saving method
{
var job = new Job{Name = "Name"}
dbContext.Jobs.Add(job);
dbContext.SaveChangesAsync();
var category = dbContext.Categories.Find(2);
job.Categories.Add(category);
dbContext.SaveChangesAsync();
transactionScope.Complete();
}
More ways here
https://msdn.microsoft.com/en-us/library/dn456843(v=vs.113).aspx