Biztalk Orchestration vs .Net Class library Reusable code


Which is better for a non workflow based  code that needs to be called from orchestrations.


I believe that the .Net component is a better choice :


 


1. .Net Component


        Write a .Net component class library which exposes a static method which does the work, and can be referenced by the btprojects.


Pros : common reusable component without need for any transaction / Orchestration overheads.


 


2.   Public Orchestration  


        Write a shared  orchestration which does the work.


Pros :


  GUI based evelopment/ other BTS pros.


Cons:


- The Orchestration needs to have atomic transaction enabled. If the code uses Non serializable components or  Enterprise Lib components, which are not serializable, we have to make it atomic.


- All calling Orchestrations needs to be transactional, since it is calling a transactional orchestration.


- Overheads of Orchestration / Persistence to database.


 

Skip to main content