Biztalk Send Pipeline Properties set through Admin Console are not being set

854 Views Asked by At

I have a Receive location with both Rcv as well as a Send pipeline. Both the pipelines have a Custom Pipeline component that has some Design-Time properties. In the Send pipeline, if I am setting those properties through BizTalk Admin Console, the properties are not being overridden. However, the same thing works completely fine with Rcv pipeline. I cannot just set the properties at Design time as it is an Environment based value and need to be set at runtime.

2

There are 2 best solutions below

1
On

Please make sure you have restarted the host after you made the design time change. Also, you can put a break point also to see how it is behaving.

7
On

After debugging the pipeline component, this is what I have found:

Following is the usual working of a Pipeline component (http://geekswithblogs.net/cyoung/archive/2011/09/14/biztalk-server-2010-loading-properties-in-custom-pipeline-components.aspx)

When a pipeline component is executed, the Load method of Pipeline components is called twice - first time it loads all the design time properties set on the Pipeline and when the Load method is called the second time, it is loading the Property Bag as set in the Pipeline configuration on BizTalk Admin Console. Note: Only the properties that are changed will be passed in this property bag.

When we use a Request-Response Receive location, the above mentioned process is followed on the Receive Pipeline.However, when the same pipeline component is called from the Send pipeline,the Load method is only called once and hence none of the properties set from the BizTalk Admin Console are being set and the design-time properties do not get overwritten, thus causing the issue.

I have found a similar post witht he similar issue and no answer(https://social.msdn.microsoft.com/Forums/en-US/c69b3af1-b208-4213-884e-a98b8583761c/strange-ipersistpropertybag-load-pattern?forum=biztalkgeneral)

It looks like it is by design and I will be raising a ticket with Microsoft.