BizTalk 2006, same assemblies with different behaviour in different BizTalk applications

biztalkbiztalk-2006

Is it possible to have the same assemblies behave differently in different BizTalk 2006 applications?

For example, is it possible within an assembly to somehow have access to the BizTalk application Id or Name that is using that instance and then make it have different behaviours for different BizTalk applications?

Or could it be done any other way, rather then versioning the assemblies?

Best Answer

What exactly are you trying to accomplish? That is, what kind of behavior differences are you trying to introduce?

The truth of the matter, is that there is no fool-proof way of finding out in which BizTalk application your code is executing, because the concept of Application in BizTalk is purely an admin artifact. Under some restricted circumstances, you can go out to the management database using ExplorerOM and do some queries to figure out what application an artifact (port, orchestration) belongs to, but it can be slow and might require you to adjust security.

It also might not give you the expected results depending on whether you have messages that cross application boundaries through messaging or orchestration calling.

Perhaps if you can share a bit more about what you need this for I could try offering better suggestions!

Related Topic