Handling TransactionScope in BizTalk Orchestration

Hi,

We have a scenario where in it is required to call the request response WCF service having 4 different Operations in a particular sequence and we need to commit these operations IFF all the transactions/operations are successfull.

It means if any one of the operation returns a fault message either due to an exception or a response message wih a error code/ error message, we need to revert back the operations processed successfully prioir to this operation for which we are getting errorcode/fault message.

We do not have an option of calling the revert back operations since they are not availble in the WCF service [Generated from a product ], I know we do have an option of handling these types in .Net using TransactionScope and commiting all the transactions with in the scope or Roll back.

Can anyone plese let me know how can we achieve the same in BizTalk 2013 version in an Orchestration.

Thanks in Advance,

Mruthunjaya J


April 22nd, 2015 5:25am

Hi Mruthunjaya,

Do you have any control on the WCF service? It would be best if they could provide an aggregated operation that handles the transaction internally - this should be possible if none of the Operations depend on the result/response from an earlier invoked Operation.

What are the transaction options set on the service oeprations? Do they allow to flow client transactions?

If yes, you can think of writing custom WCF client code that makes inline calls to the service bypassing the BizTalk Send Port - because for this scenario to work with BizTalk orchestration and transaction scopes, you need reverse operations present on the WCF service.

If it is indeed possible to write custom code, you can wrap all the 4 calls inside a TransactionScope, and take a decision to commit/rollback at the end.

Thanks

Arindam 



Free Windows Admin Tool Kit Click here and download it now
April 22nd, 2015 9:45am

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics