1.1对于工作流总体概貌的理解
这几天一直在看MSDN,整理下自己的思路。
在.net工作流中,进程通过WorkflowRuntime创建和维护WorkflowInstance.除此而外,WorkflowRuntime可以创建自定义的服务和本地服务(为工作流处理对象设计服务),可以控制从内存中加载和卸载工作流(配合sqlWorkflowPersistenceService就可以实现工作流的持久化)等等。
现在理解下进程中workflowRuntime,workflowInstance和服务的关系(见附件)。
这是MSDN中描述服务在workflowRuntime中的执行情况,不过从侧面反映了:
1.workflowInstance由workflowRuntime创建。
2.服务由addservice()加载入workflowRuntime中,而与workflowInstance实例无关。
3.workflowInstance在创建后,自动流动触发activity。在activity中触发service中的事件,转而由workflowRuntime将事件转化为接口上的事件调用(EventHandle)。
从上面的分析,举个例子来说,就是workflowInstance相当于公司中文档批复的业务流程,而服务就是需要批复的文档以及在文档上要做的操作。而workflowRuntime则是跳出流程和文档,调整两者连接的部门(虚拟,假设有此部门)。
1.2 对ExternalDataExchangeService服务的理解
诚如MSDN所说,一个必须添加到工作流运行时引擎才能启用本地服务通信的服务。若要正确地初始化和注册这些服务(
我觉得应该是添加到workflowRuntime里服务于workflowInstance的服务),必需将本地服务添加到ExternalDataExchangeService中。
因此workflowRuntime,workflowInstance,ExternalDataExchangeService和本地服务的关系是:workflowRuntime承载workflowInstance,ExternalDataExchangeService被添加到workflowRuntime,本地服务被添加到ExternalDataExchangeService中以实现对于譬如SqlWorkflowPersistenceService的初始化。
还有,就是本地服务必须实现使用 ExternalDataExchangeAttribute 进行修饰的接口。本地服务中的需要定义方法和事件(需要实现ExternalDataEventArgs)供CallExternalMethodActivity和HandleExternalEventActivity使用。
前者用于工作流实例从外部接收信息,后者用于处理由本地服务引发的事件的工作流通信活动。workflowRuntime会将本地服务上的方法调用转化为workflowInstance上的Event触发。
- 大小: 133.8 KB
分享到:
相关推荐
在这个项目中,“VB.NET---计算器---源代码”是一个使用VB.NET编写的简单计算器应用程序。它展示了如何利用VB.NET的基础知识来构建一个交互式的图形用户界面(GUI)应用。 描述中提到,这个计算器是开发者为了解决...
通过分析这些源码,学习者可以深入理解ASP.NET的工作原理,掌握实际开发中的最佳实践,并且能够通过调试和修改代码来提升编程技能。这是一份非常有价值的资源,对于想要在ASP.NET Web开发领域提升自己的人来说,无疑...
本文将深入探讨微软.NET工作流设计器及其源代码,帮助.NET开发者更好地理解和利用这一工具,特别是对于使用C#进行工作流开发的朋友,将极具参考价值。 工作流是描述业务过程的模型,它定义了任务如何顺序或并发执行...
.NET反混淆 - de4dot-mod-reactor 4.9 支持以下反编译: Agile.NET (aka CliSecure) Agile.NET (aka CliSecure) ,Babel.NET ,CodeFort ,CodeVeil ,CodeWall ,CryptoObfuscator ,DeepSea Obfuscator ,...
集成于VS2003中的,本人已修改Visio.MSI文件,安装时不在需要先安装VS2003企业版。 测试一切正常(包括数据库生成功能) 由于只能上传小于15MB的文件,所以分成了7个文件。 1--...
最近收集的VB.Net-C#多线程Thread-代理委托delegate编程。文章列表: c#.net多线程同步.txt C#WebBrowser页面与WinForm交互技巧一.txt C#多线程编程-多细全.txt C#多线程编程简单实例.txt C#多线程窗体控件安全访问....
集成于VS2003中的,本人已修改Visio.MSI文件,安装时不在需要先安装VS2003企业版。 测试一切正常(包括数据库生成功能) 由于只能上传小于15MB的文件,所以分成了7个文件。 1--...
针对.NET平台,SQLite提供了System.Data.SQLite.dll驱动,使得.NET开发者可以便捷地在C#、VB.NET等.NET语言中使用SQLite数据库。本文将围绕".NET SQLite源代码(sqlite-netFx-source-1.0.76.0)"这一主题,深入探讨其...
Aspose.Total for .NET (2014-01-23) =================================================== DISCLAIMER: THIS SOFTWARE PACKAGE CAN ONLY BE USED FOR RESEARCH PURPOSES This package contains the following ...
XBPM工作流的Web Serivce接口是XBPM工作流API基础上的一个扩展(开源),通过提供标准的接口服务于开发其它非.Net平台的流程业务应用程序(例如:支持移动平台IOS、Android平台等程序) 提供工作流应用示例项目源码...
组织并执行一系列的操作或者活动的最自然的方式?... 另外,WWF还提供了对ASP.NET的out-of-the-box支持,让构造和运行能在IIS和ASP.NET环境的工作流变得简单。 有可供学习的文档下载,解压密码是www.tommyhu.cn
ADO.Net助手是一个获取ADO.Net连接字符串(支持ADO.Net助手是一个获取ADO.Net连接字符串(支持Access,SQLite,SQLServer,MySQL和ORACLE),测试SQL命令,存储过程和数据库之间互导数据的辅助软件。ADO.Net助手还可以...
通过asp.net core 页面发起Elsa工作流 工作流持久化,手工启动
Spring.NET是中国开源社区对Spring框架的一个移植版本,它将Java平台上的Spring精神带到了.NET环境中。Spring.NET是一个全面的企业级应用程序开发框架,旨在简化.NET应用的构建、测试和维护过程。1.3.2是其发布的一...
VS2010包含了对ASP.NET和WF的支持,使得你可以直接在IDE中设计和调试工作流。 文件"WebWithWF"可能是一个解决方案文件,包含了ASP.NET Web应用程序项目和可能的WF库项目。打开这个文件后,你将能看到具体的代码结构...
oracle 每个版本都有问题,能用的就是打了补丁后的版本,这个11到目前为止最后一个版本。 64-bit ODAC 11.2 Release 6 (11.2.0.4.0) Xcopy for Windows x64 [Released January 14, 2014] Download ODAC112040...
首先,我们需要理解`HttpWebRequest`类在.NET框架中的作用。 `HttpWebRequest`是System.Net命名空间中的一个类,它代表HTTP客户端请求,允许我们发送HTTP、HTTPS请求到Web服务器。在ASP.NET中,这个类为我们提供了...
本资源"ASP.NET学习大全(整理)"是一个全面的教程集合,旨在帮助学习者系统地掌握ASP.NET的核心概念和技术。 1. **基础概念**: - ASP.NET架构:了解ASP.NET的基础框架,包括页面生命周期、事件处理模型以及如何...
基于asp.net+C#开发的superflow工作流平台V5.6-20130403,提供强大的工作流引擎开发接口,以及强大的工作流程设计器,流程动态监控管理等功能模块!提供自定义表单设计以及平台权限自定义控制体系!
K2.net是由SourceCode公司开发的一款强大的工作流产品,它涵盖了服务端、客户端和工作空间三个主要部分。服务端(Server)是流程引擎,负责执行和管理流程实例;客户端(Design)提供了一个流程图设计和部署的环境,...