• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
Whokay 必ず勝つ!頑張ろう!
博客园    首页    新随笔    联系   管理    订阅  订阅
WWF中使用TransactionScopeActivity的令人崩溃细节
        在使用TransactionScopeActivity的时候,将所有的Code放入其中。有可能最后的运行将走到该Scope的结尾便结束。不知道原因,后来细细排查才发现:
 
要使用TransactionScopeActivity  那么WorkflowRuntime必须添加SqlPersistentService服务,没有该服务,TransactionScopeActivity在即将结束的时候无法持久化,也就代表该Scope范围认为里面的事务还未成功执行完毕,因此一方面执行会滚事务,另一方面,将跳转到FaultHandler中执行相应的CompensateActivity(如果添加了FaultHandler的话)

另外一个值得注意的细节是
在使用TransactionScopeActivity时,若你是调试的。那么会发现在完成完成TransactionScopeActivity时,在InstanceState表里面会添加上一条临时的数据,该数据就是你创建的WorkfowInstance,而当你完成该工作流实例时,这条临时数据又会被删除,也许还有其他的表有动作,但是我没有继续试探
posted on 2007-08-28 13:43  Vince  阅读(292)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3