Using WCF and the Microsoft Distributed Transaction Co-ordinator, is it possible to implement a long-running transaction against a single database? I've drawn out a simplified version of the scenario in question.
Is there a time limit that transactions have to occur within?
Assuming the DB is SQL Server or Oracle, would there be locking that would occur during the transaction? Would it be at the row level or table level?