Debugging Orchestrations
When exceptions are thrown, it's useful and often an absolutely necessary pattern to handle them using exception handling blocks. For exception, we can anticipate and would like to handle separately. We apply the pattern of more detailed to less detailed exception catch blocks. But, we simply can't have exception handlers for each and every exception type that we can potentially get. For example, a divide by zero can happen in our Orchestration process in a place that we were not expecting. It's a runtime error, not a deterministic business error that we should have been able to anticipate and handle specifically. A divide by zero exception will then most likely end up in a catch-all exception handling block. The difficult part now is to find out exactly what and why it happened. We are going to take a look at some of the options you have for debugging Orchestration execution.
First, although probably well known for anyone looking to take the BizTalk Server 2010 certification...