问题描述
在我的BizTalk流程中,我有2个循环,一个内部循环,一个外部循环。当外部循环中发生异常时,控件将转到catch异常块(捕获System.Exception),但是如果内部循环中发生任何异常,则不会调用catch块。我所有的处理都在内部循环内进行,但是我无法捕获任何异常。
尽管BizTalk控制台事件查看器从内部循环(Microsoft.ServiceModel.Channels.Common.XmlReaderParsingException)中捕获了异常,但未调用catch块。
任何人都可以从内部循环内部帮助处理异常的方法。
解决方法
如果由于未处理的异常而挂起,那么您可能尝试使用System.SystemException
而不是System.Exception
来捕获它,因为System.SystemException
不会捕获XLang
异常。确保您使用的是System.SystemException
您还可以在范围内添加另一个catch块,并使该catch成为一般异常,该异常应涵盖所有内容。