Visual Sudio提供了一系列的WF设计工具,这些可以让你更方便更高效的开发你的工作流应用,主要包括以下几部分:
1.Visual Studio项目模板
2.可视化的工作流和活动设计器
3.规则条件设计器
4.工作流调试器
5.命令行编译工具(wfc.exe)
在说这些之前,我们先来说说工作流的类型和创作模式
顺序工作流按逐个顺序执行一组包含的活动,它有明确的开始和结束点,从始至终,一步接一步,沿着一条可能的线路执行,这种工作流适合于重复的,相对固定的操作。而在状态机工作流中,工作流本身由一组状态组成。 将一个状态指示为初始状态。 每个状态都可以接收一组特定事件。 视事件而定,可以转换到另一个状态。 状态机工作流可以有最终状态。 当对最终状态进行转换时,工作流将完成。我们需要根据不同的情景选择不同的工作流。
WF中的工作流有三种创作模式:仅限代码,代码分离,无代码
仅限代码:这种是默认的创作模式。
代码分离:这种方式的工作流序列化后保存在一个的以.xoml为扩展名的文件中,它的代码保存在.xoml.cs中。.xoml是workflow的一种标记语言,和.xaml有着同样的句法,有人可能会问既然是一样的为什么还要有两个文件名,其实最开始的时候.xoml使用自己的句法,后来才和.xaml一样的,由于历史的原因就接着使用.xoml了,在wpf中是使用的是.xaml,你添加不同类型的文件它会去调用不用的设计器,代码分离的工作流必须进行编译,并且无法直接加载到工作流运行时引擎。
无代码:通过使用可扩展应用程序标记语言 (XAML) 创建标记源文件从而创建工作流的声明性方式,这种方式不被Visual Studio直接支持,你可以将代码部分(.xoml.cs)删除或直接建立xml文件并更改扩展名为.xoml。这种方式可以让你在运行期间直接加载到工作流运行时引擎中,增加了灵活性。这种方式可以使用 x:Code 指令元素在工作流标记文件中插入过程代码。 代码必须位于 CDATA 节中,以使编译器可以编译代码而非将其视为声明性 XAML 标记。如下例:
<CodeActivity x:Name="codeActivity1" ExecuteCode="methodName1">
<x:Code>
<![CDATA[
void methodName1(object sender, EventArgs e)
{
System.Console.WriteLine("HelloWorld");
}
]]>
</x:Code>
</CodeActivity>
</SequentialWorkflowActivity>
然后我们开始说我们的设计时工具
1.Visual Studio项目模板
类型 |
说明 |
顺序工作流控制台应用程序 (Sequential Workflow Console Application) | 创建用于生成工作流的项目,该工作流包含一个默认的顺序工作流和一个控制台测试宿主应用程序。 |
顺序工作流库 (Sequential Workflow Library) |
创建用于以库的形式生成顺序工作流的项目。 |
工作流活动库 (Workflow Activity Library) | 创建一个用来创建活动的库的项目,以后可以将其作为工作流应用程序中的构造块重用。 |
状态机控制台应用程序 (State Machine Console Application) | 创建用于生成状态机工作流和控制台宿主应用程序的项目。 |
状态机工作流库 (State Machine Workflow Library) | 创建用于以库的形式生成状态机工作流的项目。 |
空工作流 (Empty Workflow) | 创建可以包含工作流和活动的空项目。 |
2.可视化的工作流和活动设计器
主要有顺序型工作流,状态机工作流设计器。每种都有设计视图,错误处理视图,取消处理视图.
3.规则条件设计器
在 WF 中,通过两种主要方式公开规则技术:一种是作为活动上的条件,另一种是作为策略活动中的正向链接 RuleSet。IfElseBranchActivity、ConditionedActivityGroup、WhileActivity 和 ReplicatorActivity 活动使用条件来控制活动的执行。 条件可以声明方式表示,也可以在代码中定义。 声明性条件以代码 DOM 语句的形式在规则的 XML 文件中创建。 基于代码的条件可引用工作流的代码文件中的一个方法,该方法通过 Result 属性返回其结果。
与条件一样,规则以代码 DOM 语句的形式表示,并收集到规则的 XML 文件中。 规则包含一个条件语句和一些操作集合,这些集合中的操作是根据条件的结果来执行的。 规则将会收集到规则集中,规则集既支持规则的简单依序执行,也支持规则的复杂正向链接。 规则集由 PolicyActivity 活动执行(摘自MSDN)。看下下面的截图:
有智能感知的,下面这张图是规则集的设计器
4.工作流调试器
调试工作流应用程序也很容易,我们只需要放置断点,你可以在工作的任何一个活动上设置断点,一旦代码流到达设置了断点的活动,Visual Studio 就会将控制权移交给工作流调试器,如何下图:
5.命令行编译工具(wfc.exe)
WF提供一个名为 wfc.exe 的命令行工作流编译器可以用来编译工作流,我们也可以使用WorkflowCompiler 类来编译,具体参数什么可以查阅MSDN。
上一篇:坚持学习WF(1):从HelloWorld开始
下一篇:坚持学习WF(3):WF框架概览
发表评论
-
平淡的2007
2007-12-24 08:04 784早上起来,送女朋友去公交车站,然后回来赶紧打开电脑,先 ... -
DreamSpark发布,高校学生免费使用Visual Studio 2008 Professional Edition 等微软软件
2008-02-20 13:23 1380今天上网无意中搜索到学生可以免费使用VS2008专业版,后来又 ... -
坚持学习WF(1):从HelloWorld开始
2008-04-04 16:30 849[置顶]坚持学习WF文章索 ... -
坚持学习WF(3):WF框架概览
2008-04-08 07:27 736[置顶]坚持学习WF文章索 ... -
坚持学习WF(4):活动(Activity)和依赖属性(DependencyProperty)
2008-04-12 00:01 1101[置顶]坚持学习WF文章索引 活动(Activity) 活动 ... -
坚持学习WF(5):自定义活动(CustomActivity)
2008-04-13 15:25 881当WF提供的标准活动不能满足我们的需求的时候,我们就需要定义自 ... -
MOSS点滴(1):如何开发和部署feature
2008-04-16 21:35 806Features 是MOSS 2007以开箱即用的一套新功能, ... -
MOSS点滴(2):自定义Application Page
2008-04-19 20:07 809在MOSS中后台管理的页面都是Application Pag ... -
坚持学习WF(6):开发可复用的宿主程序
2008-04-21 21:45 659我们之前写工作流宿主 ... -
MOSS点滴(3):说说MOSS中的母版页
2008-04-25 21:15 1135MOSS中有两种页面:Site P ... -
MOSS点滴(4):实现Form认证
2008-04-29 21:12 666本文主要参考了网上的一些文章,但有些文章有些地方说的不是很明确 ... -
坚持学习WF(7):流程控制(Flow Control)
2008-04-30 18:10 772本文主要说说WF中和流 ... -
坚持学习WF(8):本地服务之调用外部方法
2008-05-09 08:17 718WF提供了一组核心服务 ... -
MOSS中的WebPart开发
2008-05-10 13:53 1024由于在asp.net1.1的时候asp.net中还没有webp ... -
坚持学习WF(9):本地服务之事件处理
2008-05-28 07:49 763[置顶]坚持学习WF文章索引 一:先来介绍两个活动 Even ... -
坚持学习WF(10):在工作流中使用关联
2008-06-01 13:03 658[置顶]坚持学习WF文章索 ... -
坚持学习WF(11):工作流通信与队列
2008-06-07 15:45 691[置顶]坚持学习WF文章索引 WF 提供的通信模型是构建于 ... -
MOSS中创建自定义内容类型
2008-06-12 20:23 1068一:简要介绍 某类内容 ... -
.NET中IDisposable接口的基本使用
2008-06-15 12:01 908首先来看MSDN中关于这个接口的说明: [ComVisible ... -
坚持学习WF(12):使用EventHandlingScopeActivity活动
2008-06-18 22:46 639[置顶]坚持学习WF文章索引 EventHandlingSco ...
相关推荐
坚持学习WF(2):WF创作模式和设计时工具 坚持学习WF(3):WF框架概览 2.3两篇主要全面的阐述了WF框架和Visual Studio对开发WF的一些设计时的工具。 坚持学习WF(4):活动(Activity)和依赖属性(DependencyProperty) ...
坚持学习WF(2):WF创作模式和设计时工具 坚持学习WF(3):WF框架概览 2.3两篇主要全面的阐述了WF框架和Visual Studio对开发WF的一些设计时的工具。 坚持学习WF(4):活动(Activity)和依赖属性(DependencyProperty) ...
坚持学习WF(2):WF创作模式和设计时工具 坚持学习WF(3):WF框架概览 2.3两篇主要全面的阐述了WF框架和Visual Studio对开发WF的一些设计时的工具。 坚持学习WF(4):活动(Activity)和依赖属性(DependencyProperty) ...
坚持学习WF(1):从HelloWorld开始 源码
坚持学习WF(5):自定义活动(CustomActivity) 源码
web wf 设计器web wf 设计器web wf 设计器web wf 设计器web wf 设计器
思科cisco NAV10V2-WF-ADVSEC(电信商务领航2-2)1.1.13 固件,注意自己的路由器信息,路由器信息处显示UDI:NAV10V2-WF V01 GKSXXXXXX,有V01的不能用,硬件不一样,刷不进去,会报错
WF5803/WF100D驱动代码及资料,包含IIC、三线SPI、四线SPI驱动代码
爱普生WF-7620 WF-7610 WF-7110 WF-3641等喷头更换视频教程。很详细的视频教程。
Beginning WF: Windows Workflow in .NET 4.0 By Mark Collins Publisher: Apress 2010 | 500 Pages | ISBN: 1430224851 | PDF | 4 MB Windows Workflow Foundation is a ground-breaking addition to the core ...
图灵WF高级程序设计 纯净版 有的版本有很多广告链接,整理了一下,重新发布 图灵WF高级程序设计 纯净版 有的版本有很多广告链接,整理了一下,重新发布 图灵WF高级程序设计 纯净版 有的版本有很多广告链接,整理了...
电信 思科 Nav10v2-wf 固件 1.1.13 版本, 通过 网页和firefox 浏览器升级或按reset键上电后,用tftp client push 192.168.1.1 上去。
WF源码资料2
Windows Workflow Foundation (WF) is a revolutionary part of the .NET 4 Framework that allows you to orchestrate human and system interactions as a series of workflows that can be easily mapped, ...
WF4.0工作流设计器,C/S结构,可实现无代码设计工作流
WF高级程序设计.pdf 个人收集电子书,仅用学习使用,不可用于商业用途,如有版权问题,请联系删除!
WF4.0基础篇学习笔记,很好的资料文档,下载不后悔
爱普生wf7111w7620wf7621清零强力清洗软件,支持爱普生wf7111wf7621清零强力清洗软件, 实测wf7620也可以用,估计wf7610也能用
本书详细讲解windows workflow Foundation(WF)的运作原理,并在解析原理的过程中给出WF的设计初衷。WF使用了一种开创性的方法来编写和执行程序。本书两位作者从WF项目立项开始就参与这个项目,负责规划、设计、...