public void RaiseTransactionRolledBackEvent(ReadOnlyCollection <DomainObject> domainObjects) { ArgumentUtility.CheckNotNull("domainObjects", domainObjects); using (EnterScopeOnDemand()) { for (int i = domainObjects.Count - 1; i >= 0; i--) { domainObjects[i].OnRolledBack(EventArgs.Empty); } _clientTransaction.OnRolledBack(new ClientTransactionEventArgs(domainObjects)); } _extensionCollection.RolledBack(_clientTransaction, domainObjects); _listenerCollection.TransactionRolledBack(_clientTransaction, domainObjects); }