使用silverlight构建一个工作流设计器(九)

2012-03-23
浏览
导读:源代码下载:http://www.shareidea.net/opensource.htm 在线演示:http://www.shareidea.net/workflow.htm 视频教程: http://www.shareidea.net/video/sharedes

源代码下载:http://www.shareidea.net/opensource.htm

在线演示:http://www.shareidea.net/workflow.htm

视频教程: http://www.shareidea.net/video/sharedesigner/sharedesigner.htm

本文源地址:http://www.cnblogs.com/chegan/archive/2009/05/10/1453457.htm

六 增强的用户体验功能

6.5 约束性检查

在用户保存流程时,系统需要对用户当前配置的流程进行一般性的约束检查。这些约束性检查包括以下部分:

每个流程都必须有一个开始活动以及一个结束活动。

开始活动不能有前驱活动,必须有至少一个后续活动。

结束活动不能有后继活动,必须至少有一个前驱活动。

分支活动有且只有一个前驱活动,并且必须至少有一个后续活动。

汇聚活动有且只有一个后继活动,并且必须至少有一个前驱活动。

常规交互活动必须至少有一个前驱活动和后继活动(常规交互活动默认拥有或分支以及或汇聚活动的特性)。

每个规则都必须有起始活动和终结活动。

任何两个规则的起始活动和终结活动不能都相同。

通过以上程序检查的流程符合一般性约束条件,但并不表明这是一个完全正确的流程。这些检查只是一种编译性检查,不包含运行时的检查。运行时检查是指流程在运行过程中的一些约束性检查。这些包括但不限于:

规则条件的编写运行时检查。

流程死循环检查。

等等。

本程序只涉及到一般性的约束检查。

在保存流程时,根据上面的约束条件检查每一个活动和规则,对于不满足条件的,则给出相应提示,如下图所示:

Silverlight编程模型、XAML和HTML DOM

Silverlight对象树

Silverlight中如何为浏览器外应用程序实现

Silverlight中如何为浏览器外支持配置应用

使用LINQ和ADO.NET创建Silverlight程序