【翻译习作】 Windows Workflow Foundation程序开发-前言
Windows Workflow Foundation程序开发-基于XAML和C#的WF实战技术与例程
——C#程序员的WF功能与编程接口技术指导
前言
Windows Workflow Foundation(简称WF),是一项对工作流进行定义、执行和管理的技术。它是.NET框架3.0版的一部分,并且将来会被集成到Windows Vista操作系统中。
继COM+和分布式事务协调器之后,WF可被看作是Windows平台上最令人瞩目的一款中间件产品。WF与前两者的区别在于:不是每一个软件应用都需要进行分布式事务处理;但几乎每个软件都要在其内部实现工作流。
在本书帮助下,你可以为你的软件添加上工作流动力。
本书的内容
第1章向我们介绍了工作流的基本概念,说明了WF是如何处理那些存在于工作流解决方案中的疑难问题。“活动(Activity)”是构建工作流定义的基本模块,我们将对它们建立起初步的印象,并且会学习如何使用Visual Studio 2005编制一个简单的工作流。本章同时对WF提供的运行时服务进行了描述。阅读完本章内容,我们就会对WF的基本特征有所了解。
第2章的重点是如何编制工作流。特别地,我们会学习怎样应用C#和可扩展应用程序标记语言(英文简称XAML)构建工作流。通过使用工作流编译器,我们可以更为透彻地了解:WF是如何通过代码生成器从工作流标记码中自动产生类代码的,以及这些自动生成的代码又是如何与我们的手写代码联合产生一个工作流类型的。这一章将提供一些基础知识,这有助于我们了解WF在编译阶段是如何运行的。
在第3章里,我们关注的是顺序工作流。我们会对SequenceActivity进行一番研究,学习一些与事件相关的知识,这些事件都是在一个工作流实例的生存期内由工作流运行时引发的。利用Visual Studio,我们可以创建一些工作流,它们既可以接收参数也能够以调用方法和侦听事件的方式与其宿主进程进行通信。在本章的最后部分将介绍一个工作流例程,在这个例程中,工作流会首先产生一个异常,然后展示如何利用错误处理器捕获到该异常。
第4章会向我们介绍WF基本活动库中的每一个成员。我们会学习控制流活动、通信活动、以及面向事务的活动。本章也会提及Web服务活动、基于规则的活动和状态活动。本章的目的在于使我们不仅认识到基本活动库的所有功能,而且能够知晓每种活动所能处理的具体问题。
有了基本活动库的知识作铺垫,我们会在第5章尝试创建自定义活动。本章首先列举出了创建自定义活动的驱动力,随后提供了一个创建自定义活动的例程,并在具体开发过程中应用了2种方法:组合法和派生法。我们将会看到如何为自定义活动定制验证器和设计器,也将领略到使用依赖属性的优势所在。本章最后还要讲解活动的执行上下文,这对于开发出健壮的活动是必不可少的。
第6章讲述了工作流运行时、工作流诊断,以及由微软公司提供的一些开箱即用的WF服务。本章演示了如何使用声明和编程两种方法对服务进行配置。我们会通过一些例程学习如何使用调度服务、持久化服务和追踪服务。本章提供了足够多的有关WF服务的信息,这使得工作流开发者在面对多种不同应用场景和环境时都能够依照需求选择和配置出适合的服务。
第7章关注的是如何使用状态机构建事件驱动的工作流。我们会看到WF如何使用活动对传统的状态机进行建模,同时,我们将创建一个能够处理外部事件并驱动状态转换的工作流。我们还会看到如何对状态机的执行历史进行追踪和检验。本章最后部分对分层状态机进行了一番研究,掌握了这部分的知识,我们就可以处理事件驱动工作流中的一些棘手问题了。
第8章都是与工作流通信相关的内容。本章首先描述了通过相关本地服务与宿主进程通信的方法,随后说明了如何使用Web服务活动进行网络通信。最后,我们将了解到身处后台默默地为工作流协调和传送消息的队列服务。
最后的第9章会讲解WF中用到的规则与条件。这里讨论了业务规则在软件开发中的角色,随后提供了一个例程来说明WF的规则引擎如何能够减轻规则开发的工作量。本章对PolicyActivity中的规则执行进行了深入的说明,并记录了规则评估的诊断信息。在WF程序开发之旅的最后一程,我们将学习如何使用WF创建基于规则的解决方案。
【翻译习作】 Windows Workflow Foundation程序开发-前言的更多相关文章
- 【翻译习作】 Windows Workflow Foundation程序开发-第一章05
1.3 开发我们的第一个工作流 也许你曾经在这样的产品经理手下搞过开发:他总是在你身边转悠,并不时的问一句“你还没做完吗?”.在这一部分,我们将用一个简单的Windows Workflow程 ...
- 【翻译习作】 Windows Workflow Foundation程序开发-第一章04
1.2.3 Windows Workflow运行时 从Windows Workflow的角度看,可以将工作流活动当成是交给一个工作流处理器去执行的一系列指令或操作码.在Windows Workflo ...
- 【翻译习作】 Windows Workflow Foundation程序开发-第一章03
1.2.2.Visual Studio 2005扩展包 微软也为Windows Workflow开发者提供了Visual Studio 2005扩展包.扩展包将许多功能集成到Visual Studio ...
- 【翻译习作】 Windows Workflow Foundation程序开发-第一章02
1.2 Windows Workflow概览 微软的Windows Workflow Foundation(简称WF)是.NET框架3.0版的一部分..NET3.0其它主要部分是Window ...
- 【翻译习作】 Windows Workflow Foundation程序开发-第一章01
第 1 章 欢迎来到工作流的世界 …思想如蝴蝶般飞到我身边 —— Gossard / Vedder (译注:Gossard与Vedder是来自Pearl Jam乐队的2名乐手,该句出自他们的歌曲 ...
- 【翻译习作】 Windows Workflow Foundation程序开发
近期整理硬盘,把09年的翻译习作<Windows Workflow Foundation程序开发>找出来了.现在又把译文过了一遍,做了些修改,贴出来献丑了.原书是<Programmi ...
- 你还记得windows workflow foundation吗
很多年前,windows workflow foundation还叫WWF,而直译过来的名称让很多人以为它就是用来开发工作流或者干脆就是审批流的. 博主当年还是个懵懂的少年,却也知道微软不会大力推一个 ...
- Workflow-Microsoft:Windows Workflow Foundation
ylbtech-Workflow-Microsoft:Windows Workflow Foundation 1. Windows Workflow Foundation返回顶部 1.1. Windo ...
- 《WF in 24 Hours》读书笔记 - Hour 1 - Understanding Windows Workflow Foundation
1.1 Hour 1 - Understanding Windows Workflow Foundation 1.1.1 What workflow is in general A workflo ...
随机推荐
- Redis系统管理相关指令简介
常用命令列表 DBSIZE 返回当前数据库 Key 的数量 INFO ...
- [dts]Device Tree机制
转自:http://blog.csdn.net/machiner1/article/details/47805069 ------------------Based on linux 3.10.24 ...
- oracle desc 表结构
SQL> desc v$logfile; 名称 是否为空? 类型 ----------------------------------------- -------- ------------- ...
- Hadoop学习3--安装ssh服务
题前语:为什么要安装这个东西呢? 是因为我们要在多台机器之间通信,这个服务就相当于支持这种通信的一个桥梁,打个比喻,相当于windows里,通过远程桌面连接到其他机器. 所以,安装这个服务,的目的是: ...
- Navicat(连接) -1之常规设置
常规设置 要成功地创建一个新的连接到本机或远程服务器 - 不管通过 SSL.SSH 或 HTTP,都要在常规选项卡中设置连接属性.如果你的互联网服务供应商(ISP)不提供直接访问其服务器,安全通道协定 ...
- SPOJ 694. Distinct Substrings (后缀数组不相同的子串的个数)转
694. Distinct Substrings Problem code: DISUBSTR Given a string, we need to find the total number o ...
- angular.js 的angular.copy 、 angular.extend 、 angular.merge
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- c++,opencv播放视频
#include <opencv2\opencv.hpp>#include <iostream> using namespace cv;using namespace std; ...
- mysql5.6优化建议
这篇文章主要介绍了MySQL5.6基本优化配置,详细分解了MySQL5.6需要优化的配置项,最终给出了一个优化案例,需要的朋友可以参考下 随着 大量默认选项的改进, MySQL 5.6比以前版 ...
- nyoj 284 坦克大战 (优先队列)
题目链接:http://acm.nyist.net/JudgeOnline/status.php?pid=284 特殊数据: 5 5 BBEEY EEERB SSERB SSERB SSETB 7 非 ...