Pipelinecomponents in GAC and in "Pipeline Components" in server environenment

Topics: Server Deployment
Apr 7, 2016 at 9:01 AM

As I understand it's good practice that in production environments - dll's are only in the GAC.
But it seems that if I set IncludePipelineComponents to true and add the corresponding ItemGroup with the pipelinecomponents - they also appear in "Pipeline Components" directory on the server. This is very nice when you're doing local testing on development machine, but not on the server.

Ofcourse I can treat pipelinecomponents just as any other dll via the ExternalAssemblies ItemGroup and they only appear in the GAC. This can be done if I check that the configuration is a server build and let the deployment file use pipelinecomponents when it's not server deployment. Is this the way to do it?

Apr 7, 2016 at 3:20 PM
Hi Bo,

Pipeline components are a special case. BizTalk expects to find them in "Pipeline Components" and does not need them in the GAC at all. I chose to put them in the GAC simply to avoid locking of the DLL in "Pipeline Components." The Deployment Framework could leave out the GAC step and they would still work.

Marked as answer by 2nice on 4/7/2016 at 1:21 PM
Apr 7, 2016 at 8:21 PM
Hi Tom.
Thanks for the answer.
I asked because I stumbled across this
on TechNet, where Microsoft actually say not to use the "Pipeline Components" folder anymore.