设为首页 | 收藏本站
首页>IT学院>操作系统>正文
Windows工作流活动技术概览
WWW.DBIT.CN 2006-11-18 21:51:21 热度:
 

然而,作为一个整体设置的规则要进行正向推理。简而言之,正向推理是指一个规则的操作导致其他相关规则被重估的能力。例如,对另一个规则测试的字段的值进行更新操作需要对所涉及的规则进行重估(除非对该规则的重估被禁用)。正向推理有三种类型。 隐式推理表示运行时引擎将判断哪些字段被一些操作修改了,然后自动对它们进行重估。只要操作显式地作用于属性,这种机制即可成功。如果有如下操作,情况又会怎样:

IF this.MinimumLength <= 8 THEN RefreshInternalState()

有谁能够知道 RefreshInternalState 方法将要做什么?该方法可能会触及涉及策略活动中其他规则的工作流属性。通过使用方法声明中的属性,您可以显式地表示该方法的行为:

<RuleWrite("PasswordLevel")> _

Public Sub RefreshInternalState()

Me.PasswordLevel = 1

End Sub

RuleWrite 属性表示方法将要修改指定的属性;同样,RuleRead 属性表示方法将要从指定的属性中进行读取。这样,就可以为运行时引擎提供明确清晰的信息以确保规则设置同步。

最后,您可以编写显式调用对涉及的属性进行更新的操作。例如:

IF this.MinimumLength <= 8 THEN

RefreshInternalState()

Update("PasswordLevel")

规则操作中的 Update 方法会计划对包含指定属性的所有规则进行重估。

循环和重复活动

这组活动提供了典型的 While 活动以及 Replicator 活动,这些活动与典型的 For 循环有些共同点。While 活动接受条件并在每次迭代开始时对该条件进行计算。如果条件为“true”,该活动将运行指定的子活动并重复直至条件为“false”。请注意在 While 主体内允许进行单一活动。因此,您可能要使用一个复合活动(如 Sequence 或 Parallel)在循环中执行多个活动。(在此处,使用术语“交错”可能比“并行”更加准确。因为没有涉及 Parallel 活动的并发,只有同一线程内的交错。) 与 Foreach 语句类似,Replicator 活动创建并执行指定的子活动的给定数量的实例。您可以只指定一个子活动,但允许使用复合或自定义活动。您不能通过声明性属性来控制迭代数。但是,您可以为初始化事件编写一个处理程序,并针对各个需要的实例,使用初始化数据填充 CurrentChildData 集合:

Sub replicator1_Initialized(ByVal sender As Object, ByVal e As EventArgs)

Console.WriteLine("Initializing ...")

replicator1.CurrentChildData.Add("You are #1")

replicator1.CurrentChildData.Add("You are #2")

replicator1.CurrentChildData.Add("You are #3")

End Sub

前面所述的代码段规定了 Replicator 的子活动的三个实例的顺序,每个实例均使用给定的字符串进行初始化。请注意,如果您将 CurrentChildData 集合置为空,Replicator 将不运行任何子活动,并仅限于触发顶级事件,如 Initialized 事件和 Completed 事件。您可以使用对象(不一定是字符串)初始化子活动,包括自定义类的实例。Replicator 还包括标示各个子活动初始化和完成的事件。默认情况下,子实例按顺序运行,尽管通过设置 ExecutionType 属性,您可以选择并行执行。如果需要并行执行,在复制器开始并执行并行线程前,可以创建所有子活动实例。当以顺序模式执行时,只有当前一个活动结束时下一个活动才能被实例化。 如果没有通过 UntilCondition 属性设置全局条件,Replicator 将在所有复制完成后才结束,否则,将在 UntilCondition 为“true”时终止活动。值得注意的是,尽管在所有子活动已完成并且 UntilCondition 属性计算为“false”时活动将被挂起,Replicator 也从不通过类似 While 循环中的子活动进行循环。在对活动进行全局实例化后,在每个子活动完成后以及所有包括的活动都已完成后,将对 UntilCondition 进行计算。但是有时,如果条件计算为“true”,Replicator 将立即退出。

本新闻共6页,当前在第3页  1  2  3  4  5  6  

 
上一篇:XP对硬盘进行更加高效灵活的分区操作
下一篇:让Windows寻找文件不再迷茫
打印】【关闭
  相关文章:
·Windows系统超级技巧 批量更改文件·用组策略强化Windows系统的三大技
·十件傻事将使你的Windows系统不安·巧用Windows性能监控来监视FTP空间
·Windows任务管理器开发原理与实现·隐藏Windows XP的16个窍门
·让Windows XP急速关机·神不知鬼不觉地置换Windows XP用户
·PC之王的足迹 Windows十年简史·Windows系统运行中的七大秘籍
·Windows服务器:切断默认共享通道七·让Windows寻找文件不再迷茫
·给Windows目录加口令的特殊方法·浅析Windows特殊类型文件
·切断Windows默认共享通道七招!·Windows XP默认设置带来的7大安全
☆联姻学院☆

保养电脑的26个窍门
文件夹删除不掉怎么办?
教你如何用手工迅速剿灭QQ广告
“熊猫烧香”病毒的病毒描述和
在Excel中只打印图表以外区域
Excel中只选中包含文本的单元
Windows XP操作系统的几个实用
用XP系统自带网络诊断程序解决
风雨雷电→自然现象动画实战技
Flash遮罩特效之百叶窗效果
十二个Dreamweaver鲜为人知的
如何用 Dreamweaver 批量做we
JavaScript的系统函数学习
Java之父:关于Java我也有遗憾
排除网上邻居使用4大常见麻烦
解除上网限制IP和MAC捆绑的破