In the case of a WCF WF service, you have a request/reply pair. Between the request/reply the area is known to be a no-persist zone.
Consequently, if you attempt to insert a TransactionScope activity into the no-persist zone, then you will get an error at runtime because the implicit persistence point at the completion of the TransactionScope will fail since the workflow cannot be persisted
before the response is sent.
You CAN write a custom activity, include a standard .Net TransactionScope and insert this into the no-persist zone and this will work fine (as it does not try to "persist"). On that basis, why can't you have a TransactionScope without persistence there
The odd thing is, even if you don't configure persistence at all (i.e. no InstanceStore), the TransactionScope will still fail.
View Complete Post