什么是Compensation
Windows Workflow Foundation compensation可以是:
默认情况下是隐式的,如果未指定异常处理或者发生未处理得异常
显式使用CompensateActivity
在Workflow中使用事务
System.Transactions.TransactionScope
TransactionScopeActivity
CompensatableTransactionScopeActivity
运行时改变workflow状态
改变一个运行的workflow实例
改变运行时的行为
改变workflow的结构
比如动态添加和删除Activity
使用PolicyActivity改变RuleSet
通过改变RuleCondition定义改变工作流分支
使用InvokeWorkflowActivity插入新的业务逻辑
使用新的xoml改变现有工作流
添加新的EventDrivenActivity响应新的事件
比如新的审批步骤
Workflow中的数据交换
Workflow和其宿主环境交换数据
HandleExternalEventActivity
CallExternalMethodActivity
ExternalDataExchangeAttribute
Workflow之间交换数据
WebServiceInputActivity
WebServiceOutputActivity
InvokeWebServiceActivity
SendActivity
ReceiveActivity
转载于:https://www.cnblogs.com/tongzhiyong/archive/2010/02/23/1672203.html