Mam dwie aplikacje połączone web servicem.

Pierwsza rozpoczyna transakcję, wykonuje coś na bazie i następnie wywołuje synchronicznie web service.
Druga (web service) robi coś dalej na bazie (tej samej).

Chciałbym, aby obie akcje na bazie były w tej samej transakcji, tzn. jeżeli po stronie web servicu nastąpi wyjątek, to zostaną cofnięte akcje wykonane na bazie zarówno przez drugą i pierwszą aplikację.

Na sieci (np. http://msdn.microsoft.com/en-us/library/0b80z9xk%28VS.71%29.aspx) piszą, że można wykorzystać atrybut TransactionOption, aby utworzyć transakcję po stronie web servicu, ale wywołanie serwisu musi rozpocząć transakcję, co u mnie nie zachodzi.

XML Web service methods can only participate in a transaction as the root of a new transaction.

Jak to obejść, aby web servicy uczestniczył w transakcji jako uczestnik, a nie twórca (root)?