您的位置:首页 > 技术开发 > 正文

WF中的持久化服务

作者:ITPUB论坛  2008-07-03
文本Tag: 微软 sql

【IT168技术文档】

  创建好的持久化数据库里包含两张表, InstanceState和 CompletedScope,InstanceState表中记录未完成事例的运行状态,CompletedScope表记录当工做流使用事务的支持。

  定义两个事件
首先定义IPersistenceDemo接口: [ExternalDataExchange] public interface IPersistenceDemo { event EventHandler<ExternalDataEventArgs> ContinueReceived; event EventHandler<ExternalDataEventArgs> StopReceived; } 实现本地服务PersistenceDemoService: public class PersistenceDemoService : IPersistenceDemo { public event EventHandler<ExternalDataEventArgs> ContinueReceived; public event EventHandler<ExternalDataEventArgs> StopReceived; public void OnContinueReceived(ExternalDataEventArgs args) { if (ContinueReceived != null) { ContinueReceived(null, args); } } public void OnStopReceived(ExternalDataEventArgs args) { if (StopReceived != null) { StopReceived(null, args); } } }
  whileActivity的条件为!this.IsComplete

  heeContinue和heeStop分别接收我们定义的ContinueReceived和StopReceived事件。
public sealed partial class PersistenceDemoWorkflow: SequentialWorkflowActivity { private Boolean isComplete = false; public Boolean IsComplete { get { return isComplete; } set { isComplete = value; } } public PersistenceDemoWorkflow() { InitializeComponent(); } private void handleStopReceived_Invoked(object sender, ExternalDataEventArgs e) { //tell the WhileActivity to stop isComplete = true; } }
1
【内容导航】
第1页: 概述
©版权所有。未经许可,不得转载。
[责任编辑:nancy]
近期热评文章