У меня есть служба WCF, которая выполняет некоторые обновления для нескольких баз данных и Active Directory. Поскольку Active Directory не может поддерживать транзакции, я хочу реализовать его в классе «DirectoryRepository», который будет выполнять компенсирующее действие при откате.
мой код использует TransactionScope ...
using(var scope = new TransactionScope())
{
AssetRepository.Add(asset);
DeploymentRepository.Add(deployment);
DirectoryRepository.Add(directoryEntry);
scope.Complete();
}
Как мой DirectoryRepository может быть в курсе любых текущих транзакций и получать уведомления о необходимости отката?