La Compréhension TransactionScopeOptions: RequiresNew = Supprimer + Requis?

Je crois que je comprends TransactionScopeOption.Suppress et TransactionScopeOption.Required mais j'ai du mal à comprendre ce que TransactionScopeOption.RequiresNew. Basé sur la dernière explication que j'ai lu, la suite de deux blocs de code fonctionnellement être le même? Est-ce une représentation précise de ce que RequiresNew signifie?

using (var ts1 = new TransactionScope(TransactionScopeOption.RequiresNew))
{
  DoStuff();
  ts1.Complete();
}

et

using (var ts2 = new TransactionScope(TransactionScopeOptions.Suppress))
{
  using (var ts3 = new TransactionScope())
  {
    DoStuff();
    ts3.Complete();
  }

  ts2.Complete(); //not required but recommended for consistency's sake
}

OriginalL'auteur Jaxidian | 2011-08-08