Deploying BizTalk Assemblies with OverrideFlag True

Topics: Server Deployment
Apr 19, 2011 at 2:47 PM

Hi Thomas,

I have a two quick question. 

Question1: I would like to add Biztalk Assembly (say Schema project) into the MSI with OverrideFlag as True.
Could you please let me know if there is any attribute or node in BTDF that mentions this.

Question2: I would like to create a BizTalkApplication.MSI that references another CommonBizTalkApplication (assumed to be already deployed in BizTalk Server). How can I achieve this via BTDF ?

Scenario for Applications deployed in BizTalk Admin Console:
1.CommonBiztalk Application (has CommonSchemas.dll as BizTalk Assembly Resource)
2.MyBizTalk Application (has MySchemas.dll AND MyMaps.dll that uses CommonSchema.dll and MySchemas.dll)

Avinandan Patra

Apr 19, 2011 at 3:06 PM

Found the answer to my Question 2:

Quoting some part from above:
"It is extremely simple to have one app create a reference to another during deployment. 
Just add an <AppsToReference> property in your .btdfproj and include the name of the other app"

Apr 19, 2011 at 5:50 PM

Hi Avinandan,

Could you expand on the scenario that you're trying to solve with Question #1?  The normal process with the Deployment Framework is to undeploy if already deployed, then deploy.  During development in Visual Studio, that all happens together in one process.  On a server, the two steps must be executed separately.  Due to the two-step model, there is never a need to overwrite.

Just a reminder/clarification -- the MSI's that you will generate with the Framework are completely different than the ones that BizTalk Admin generates.


May 15, 2011 at 2:23 PM

Hi Thomas,

The question 1# was basically to mimic a scneario to import a particular BizTalkApplication's msi (say BizApp1.MSI) into an already deployed BizTalkApplication say (BizMainApp) with override flag as True so that the conflicting resources are overridden with the BizApp1's resources.

The scenario is rather similat to what discussed in below thread :--

Please advise.

Apologies for the late reply !!!



May 16, 2011 at 6:08 AM

Are you staying completely within the Deployment Framework model for deploying these two apps?  If so, this would be problematic even if you could do an overwrite, because the next time you undeployed one of the apps, it would undeploy the DLL that was shared between the two, and the other app would certainly fail.

Can you use a "Common" BizTalk app and a "SpecificPurpose" BizTalk app to avoid deploying the same artifact under two applications?  That's normally how we would structure a scenario where shared BizTalk artifacts or DLL's are involved.  What is the makeup of these two apps that they need the same schema DLL to reside in both deployment packages?

As that other post mentioned, the Deployment Framework is still oriented around a single-BizTalk-app model.