public void SinglePhaseCommit(SinglePhaseEnlistment singlePhaseEnlistment)
{
if (this.disposed)
{
return;
}
try
{
if (this.dataAccessObjectDataContext != null)
{
this.commandsContext = this.GetSqlTransactionalCommandsContext();
this.dataAccessObjectDataContext.Commit(this.commandsContext, false);
this.commandsContext.Commit();
}
singlePhaseEnlistment.Committed();
}
catch (Exception e)
{
ActionUtils.IgnoreExceptions(() => this.commandsContext.Rollback());
singlePhaseEnlistment.Aborted(e);
}
finally
{
this.Dispose();
}
}