I couldn’t be bothered writing a test harness like I have in the past to debug a pipeline component so I spent five minutes putting some extra tracing in my pipeline for run time debugging. Then the obvious occurred to me. Why not simply attach Visual Studio to the BizTalk process(BTSNTSvc.exe) and step through the code. Doh, slap to the forehead!!!!
- To make life easy turn off all BizTalk host instances except the one your pipeline is deployed under. i.e. if the pipeline is running under Send Port A that is running under Host A then Host A is the only host instance you want running.
- Now open your pipeline in Visual Studio and select the "Attach to Process" menu item from the "Debug" menu on the main toolbar.
- Click the "Show Processes for All Users" checkbox and you should see the sole BTSNTSvc.exe process. Select it and hit the "Attach" button.
- Now send a message through a receive location implementing a pipeline that uses the pipeline component currently in debug mode.
Hey presto. Four easy steps and your debugging a BizTalk pipeline component!