使用事务和处理异常
在您设计某一业务流程时,应该仔细考虑可能发生问题的地方以及如何最好地处理这些问题。 许多业务流程都存在若干潜在的故障点。 问题可能出自许多方面;例如,服务器可能停机,或者消息的格式可能不正确。
对于长期或复杂业务流程尤其重要的是,应该跟踪其状态并且在错误发生时报告错误,以便您可以轻松、准确地解决问题。 对于业务流程同样重要的是,需要维护一组密切相关的操作的完整性,以便如果事务的某一部分执行,而另一部分未执行,整个事务都可以回滚到从未发生任何事务时的状态。
通过 BizTalk 业务流程,您可以确保工作的原子性;也就是说,甚至在外部系统参与事务时,也能够确保相关操作的完整性。 它为您提供各种工具来处理错误,维护业务流程的状态,以及通过事务、补偿和异常处理在发生问题时解决问题。
作为事务和异常处理的框架,业务流程Designer提供作用域形状。 作用域可以具有事务类型、补偿和任意数目的异常处理程序。
设置事务和异常处理的步骤如下:
创建范围。
标识所需事务的类型。
确定需要补偿的内容。
标识潜在错误。
添加适当的异常处理程序和补偿代码。
使用事务、异常处理和补偿的示例
从 https://go.microsoft.com/fwlink/?LinkId=73703下载 SDK 示例“业务流程中具有 COM+ 服务组件的原子事务”。
从 https://go.microsoft.com/fwlink/?LinkId=73703下载 SDK 示例“将 SQL 适配器与业务流程中的原子事务配合使用”。
从 https://go.microsoft.com/fwlink/?LinkId=73703下载 SDK 示例“在业务流程中使用 Long-Running 事务” 。
从 https://go.microsoft.com/fwlink/?LinkId=73703下载 SDK 示例“业务流程中的异常处理”。