文章列表
坚持学习WF(1):从HelloWorld开始 本文主要通过实现了一个可以接受参数的HelloWorld程序来了解WF。 坚持学习WF(2):WF创作模式和设计时工具 坚持学习WF(3):WF框架概览 2.3两篇主要全面的阐述了WF框架和Visual Studio对开发WF的一些设计时的工具。 坚持学习WF(4):活动(Activity)和依赖属性(DependencyProperty) 坚持学习WF(5):自定义活动(CustomActivity) 4.5两篇对主要对活动(Actibity)的介绍和依赖属性(DependencyObject)和DependencyProperty事件的使用。 ...
- 2008-10-21 09:52
- 浏览 668
- 评论(0)
[置顶]坚持学习WF文章索引
CancellationHandlerActivity 活动包含在所有复合活动的子项活动完成执行之前所取消复合活动的清理逻辑。 在WF中比较常见的就是ListenActivity 活动,ConditionedActivityGroup 活动和ParallelActivity活动,可以具有同时执行的多个子分支活动。 在所有子活动完成执行之前,某个特定条件(如到达的消息)可以导致整个活动立即关闭。 然后,父活动取消执行所有未完成的子活动,并调用其相应的 CancellationHandlerActivity 活动,以执行其中定义的清除逻辑。
1.我们就以Parallel ...
- 2008-10-19 12:34
- 浏览 582
- 评论(0)
[置顶]坚持学习WF文章索引
对于C#程序中抛出的异常我们可以使用try-catch来捕获并处理。在WF中的对异常的处理和C#中也比较相似,不过有一些不同,主要有以下几点:
1. WF中一个未处理的异常仅仅会让当前的工作流实例终止而不会导致整个应用程序终止,并且会触发WorkflowRuntime的WorkflowTerminated事件。 2. WF中的异常处理是异步的,所以WF可以将未处理的异常放在内部队列中等待处理。 3. WF中的异常可以使用代码方式处理,也可以在WF模型中处理。我们使用FaultHandlerActivity活动,该活动就像C#中的catch语句一样,每个FaultHa ...
- 2008-10-18 00:19
- 浏览 671
- 评论(0)
在我的这篇文章中:关于Sharepoint 2009的一些消息有一些关于Sharepoint 2009的消息。今天又在网上看到一篇关于Sharepoint 2009的文章。http://edinkapic.blogspot.com/2008/10/sharepoint-v14-2009-feature-list.html
下表为关于Sharepoint 2009的一些预测和一些已经确定的消息:
Feature
Summary
Probability
Source(s)
64-bit only
The SharePoint v14 / 2009 will be shipped only a ...
- 2008-10-13 20:59
- 浏览 545
- 评论(0)
[置顶]坚持学习WF文章索引
通常情况下,我们都是使用PolicyActivity活动来执行RuleSet。除了这种方式我们还可以用代码的方式来执行。首先我们建立一个项目,借助PolicyActivity的的规则编辑器来构造一个最简单的RuleSet,该RuleSet包括一个最简单的规则为RuleTest,如下表:
Rule
Conditon
ThenAction
ElseAction
RuleTest
True
System.Console.WriteLine("Hello World")
以代码方式执行RuleSet
规则集建立完成后会生成对应的.R ...
- 2008-10-12 12:19
- 浏览 634
- 评论(0)
微软公布了.NET4.0的宏伟计划,今天从http://www.microsoft.com/net/dublin.aspx下载了Dublin__NET_4_overview.docx文档,里面介绍了.NET4.0的部分功能。下面是和WF相关的。
Significant improvements in performance and scalability• Ten-fold improvement in performance
New workflow flow-control models and pre-built activities• Flowcharts, rules• Expande ...
- 2008-10-08 17:58
- 浏览 1092
- 评论(0)
坚持学习WF文章索引 由于规则不是程序化的代码,你不能使用vs的调试器来调试,如果我们要调试有规则的工作流程序,我们可以开启规则引擎的Tracing功能。我们下面以一个例子来说明。我们需要建立一个顺序型工作流项目,在工作流设计器中放入一个PolicyActivity活动,然后设置其RuleSetReference属性,我们建立以下规则集。如下表所示:
Rule Conditon ThenAction ElseAction
RuleC this.D < 100 this.B = this.B - 12 System.Console.WriteLine("RuleC ...
- 2008-10-08 07:30
- 浏览 701
- 评论(0)
坚持学习WF文章索引
这次继续学习WF中规则引擎中的相关知识。WF中的每一个规则都包括下面三部分:
1. 一个条件返回true或false 2. 一个then操作(当条件为true时执行) 3. 一个else操作(当条件为false时执行)
规则对应System.Workflow.Acti ...
- 2008-09-21 18:34
- 浏览 776
- 评论(0)
相关文章
职场疑问:如何进行技术面试职场疑问:领导该提拔谁?
小A和小B好久没见了,这一天他们又聚到了一起,开始聊起来。
小A:我们一个老员工跳槽了,去了一家半导体公司做公司内部的OA。薪水不低,在这种企业类型 ...
- 2008-09-19 12:00
- 浏览 741
- 评论(0)
[置顶]坚持学习WF文章索引
WF中提供了非常灵活的规则引擎,主要表现为两种形式即活动上的条件和规则集RuleSet。本文我们来详细说说活动上的条件。
WF本身提供的活动中有以下几个活动可以使用条件:
IfElseBranchActivity,它包含 ...
- 2008-09-17 22:21
- 浏览 720
- 评论(0)
[置顶]坚持学习WF文章索引
WF中提供了很多内置的服务,其中工作流计划服务是用来管理工作流实例线程的。默认情况下WF会自动使用DefaultWorkflowSchedulerService服务。使用该服务时在工作流运行时引擎上以异步方式运行工作流实例的线程。 等待运行的工作流存储在 DefaultWorkflowSchedulerService 的内部队列中.当 DefaultWorkflowSchedulerService 要启动工作流时,从 .NET Framework 线程池中获取一个线程并使用此线程运行工作流。 MaxSimultaneousWorkflows 属性确定调度程序服务 ...
- 2008-09-07 13:05
- 浏览 769
- 评论(0)
[置顶]坚持学习WF文章索引
WF会定期在各个持久性点(Persistence Point)检查并将工作流实例保存到持久化存储中,这样如果工作流出现错误或是异常终止时相关的信息就会被存储,下次加载工作流实例时就会从此做为开始点。这个主要是针对工作内置的服务。工作流的外部服务使用工作批次来保留状态信息。 这些服务对其工作项进行批处理并共享与工作流的事务相同的事务。 如果工作流尚未提交事务,则服务仍可以在持久点期间对某些工作项进行批处理。WF提供 IWorkBatch 和 IPendingWork 以帮助服务和工作流实例保留状态信息。
我们先来看一个简单的例子
一:首先定义一个本地服务 ...
- 2008-09-02 07:54
- 浏览 505
- 评论(0)
坚持学习WF文章索引
一:事务是你在做一组更新时要不成功,要不失败,不可能只部分更新。事务最经典的使用场合就是在关系型数据库中。补偿是取消之前已经成功的操作,在我们的工作流中我们可能完成一项任务有很多活动组成,比如我们的活动都使用了TransactionScopeActivity,我们在之后发现错误了,想要取消之前成功的操作,这个和事务就没有关系了,因为事务已经成功了。这个时候我们就可以使用补偿。你可以逻辑上划分一组活动,指定一个补偿处理器给这组活动。在补偿处理器中你声明如果补偿成功了就执行该组活动。补偿处理器就会自动跟踪异常了。或者我们直接使用CompensateActivity。
...
- 2008-08-29 07:56
- 浏览 464
- 评论(0)
[置顶]坚持学习WF文章索引在关系型数据库中支持事务已经有10几年了,在关系型数据库中如果你要有一组的更新要执行,你会先执行第一组更新,在执行第二组更新。。。。。。,如果最后所有的更新都成功,我们就将事务提交完成,如果中间发生了错误,我们会让事务回滚,到最初始的位置。我们使用事务来解决数据的完整性、一致性等等问题。在.NET中我们可以使用SqlConnection和SqlTransaction来对关系型数据库管理事务,SqlTransaction包含Commit和Rollback方法来执行和回滚事务。我们也可以添加TransactionAttribute或AutoCompleteAttribut ...
- 2008-08-14 07:45
- 浏览 459
- 评论(0)
一:一般的原则1. 视图的数量和复杂度:尽量使用少量视图,去掉不必要的和相似的视图,视图列的公式等尽量简单化。2. 尽量不要用@Today和@Now在视图的选择条件或是列公式上.3. 数据库的文档数量不要太多:要及时做归档。4. ...
- 2008-08-09 14:31
- 浏览 555
- 评论(0)