- 博客(28)
- 资源 (1)
- 收藏
- 关注
转载 int? C#中的可空类型
<br />int?是一种类型,普通的int不能为null,而用int?,其值可以为null <br />int?或者Nullable <int>表示基础类型为值类型的对象,值类型与引用类型一样也可以分配 nullNothingnullptrnull 引用 <br />对于一个类型,如果既可以给它分配一个值,也可以给它分配 nullNothingnullptrnull 引用(在 Visual Basic 中为 Nothing)(表示没有任何值),我们就说这个类型是可空的。因此,可空类型可表示一个值,或表示不
2010-08-26 19:06:00
520
转载 CompositeActivity
CompositeActivity 类<br />Activity 的派生,前者是包含其他活动的所有活动的基类。CompositeActivity 负责管理其子活动的执行。<br />命名空间: System.Workflow.ComponentModel<br />程序集: System.Workflow.ComponentModel(在 System.Workflow.ComponentModel.dll 中) 语法 Visual Basic(声明) <ActivityValidatorAttri
2010-08-23 11:06:00
393
转载 《WF编程》系列之28 - 本地通信事件:CallExternalMethodActivity
《WF编程》系列之28 - 本地通信事件:CallExternalMethodActivity<br /> 4.2 本地通信事件<br />让工作流和外部世界进行交互也并不是什么难事,因为WF本身就内置了一些活动来完成这样的工作.<br /><br />这一节我们来讨论一下可以和宿主进程提供的本地服务进行通信的活动们<br /><br />为了能让本地通信可以工作,我们需要以.NET接口的形式定义一个合同.在这个接口中会包含一些方法和事件,工作流可以通过这些方法来调用本地服务,而本地服务则可以触发这些会被工
2010-08-21 17:53:00
370
转载 System.Workflow.Activities
System.Workflow.Activities 命名空间<br />定义一些活动,可将这些活动添加到工作流,以便创建并运行工作过程的可执行表示形式。 类 类说明ActiveDirectoryRole在 Windows Workflow Foundation 宿主环境中表示 Active Directory 角色。无法继承此类。ActiveDirectoryRoleFactory一个工厂类,用于从 Windows NT 别名、电子邮件地址和安全标识符 (SID) 创建 ActiveDirector
2010-08-21 16:49:00
757
原创 System.Threading
System.Threading 命名空间<br />System.Threading 命名空间提供一些使得可以进行多线程编程的类和接口。除同步线程活动和访问数据的类(Mutex、Monitor、Interlocked、AutoResetEvent 等)外,此命名空间还包含一个 ThreadPool 类(它允许用户使用系统提供的线程池)和一个 Timer 类(它在线程池线程上执行回调方法)。 结构 结构说明AsyncFlowControl提供功能以还原执行上下文在线程之间的迁移(或流动)。 LockC
2010-08-21 15:44:00
416
转载 WorkflowInstance
WorkflowInstance类这是一些基本的属性方法,其他的在相应主题中会有提到<br /> 介绍<br />WorkflowInstance是指在工作流引擎中运行的工作流实例<br />可以用如下方式从引擎中得到一个实例<br />实例 = 引擎.CreateWorkflow(工作流类型)<br /> <br />1.这种方式在创建一个新工作流实例时使用<br />2.<br />实例 = 引擎.GetWorkflow(GUID)<br /> <br />1.这种方式在想得到工作流引擎中已知GUI
2010-08-20 22:42:00
395
转载 WorkflowEnvironment
WorkflowEnvironment 类<br />表示正在当前线程中运行的工作流实例的事务环境。<br />命名空间: System.Workflow.Runtime<br />程序集: System.Workflow.Runtime(在 System.Workflow.Runtime.dll 中) 语法 Visual Basic(声明) PublicNotInheritableClass WorkflowEnvironmentC# publicstaticclass WorkflowEnviro
2010-08-20 22:34:00
249
转载 ExternalDataExchange
<br />ExternalDataExchange特性是一个简单的标记,WF使用它来指明接口可适合于本地通信服务使用。记得我提到的wca.exe工具吗?它和Visual Studio都使用这个特性来指明接口可被你的工作流实例使用。我们就来添加ExternalDataExchange特性。<br /> 备注:不要让词语“特性标记”所欺骗,你不要认为该ExternalDataExchage特性不是一个关键组成部分。它相当重要。当工作流运行时试图进行外部数据传送时会寻找该特性。没有它,工作流和宿主之间进行数据
2010-08-20 15:43:00
510
转载 宿主和工作流:两个世界的交互 II(工作流给Host传递数据)
<br /> 我们理解了如何在启动的时候从Host传递数据给工作流,如果我们不需要从工作流返回数据的话,前面的工作就足够了。但是很多时候,我们都想要从工作流中返回一些处理的数据。<br /> 微软的工作流框架为我们提供了一个活动CallExternalMethod,来完成这样一件事。<br /> 回想上一章的列子,我们的Host程序从计算机中读取一个文件,读取一定数量的字符,在工作流中显示内容。在程序中我们要传递两个参数(一个是文件的路径,一个是从文件返回的字符数量),在工作流用Mess
2010-08-20 15:35:00
496
原创 HandleExternalEventActivity
HandleExternalEventActivity 类<br />定义用于处理由本地服务引发的事件的工作流通信活动。<br />命名空间: System.Workflow.Activities<br />程序集: System.Workflow.Activities(在 System.Workflow.Activities.dll 中) 语法 Visual Basic(声明) <ActivityValidatorAttribute(GetType(HandleExternalEventActivi
2010-08-20 14:21:00
365
原创 ExternalDataEventArgs
ExternalDataEventArgs 类表示在使用 HandleExternalEventActivity 活动引发事件时发送的数据。命名空间: System.Workflow.Activities程序集: System.Workflow.Activities(在 System.Workflow.Activities.dll 中) 语法 Visual Basic(声明) _PublicClass ExternalDataEventArgs _ Inherits EventArgs
2010-08-20 14:19:00
316
转载 WorkflowRuntime
介绍<br />System.Workflow.Runtime.WorkflowRuntime<br />文件: system.workflow.runtime.dll<br /> 在工作流的运行环境(宿主)中,为工作流提供运行的引擎<br />1.WorkflowRuntime在宿主中以自已独立的线程运行例<br />2.WorkflowRuntime可以加载多个工作流实例,每个工作流实例在WorkflowRuntime有独立的线程<br />3.同一宿主可可以实例化多个引擎,他们可以同时工作<br />
2010-08-20 11:47:00
335
转载 《WF编程》系列之4 - 漫游工作流:Widows Workflow Runtime及其服务
1.2.3 Widows Workflow Runtime<br />在Windows Workflow中,活动可以视作提交给工作流处理器执行的指令或代码,而这个工作流处理器就是WF Runtime.为了启动工作流,我们必须托管Runtime与工作流服务.1.2.3.1 托管Windows Workflow Runtime<br />Windows Worklow不是单独的应用程序,它和ASP.NET类似,WF生存在程序集中(比如System.Workflow.Runtime.dll). WF需要一个用以载
2010-08-20 11:45:00
467
原创 StateMachineWorkflowInstance 类
StateMachineWorkflowInstance 类<br />表示一个类,该类管理 StateMachineWorkflowActivity 的当前实例。无法继承此类。<br />命名空间: System.Workflow.Activities<br />程序集: System
2010-08-20 11:32:00
427
转载 Control.InvokeRequired 属性
在设计中为了让界面与逻辑分离,我的做法是使用事件,界面只要响应事件来处理界面的显示就行了。而事件在逻辑处理中可能由不同的线程引发,这些事件的响应方法在修改界面中的控件内容时便会引发一个异常。这时就用到了Control.InvokeRequired 属性 与Invoke方法。MSDN中说:获取一个值,该值指示调用方在对控件进行方法调用时是否必须调用 Invoke 方法,因为调用方位于创建控件所在的线程以外的线程中。 如果控件的 Handle 是在与调用线程不同的线程上创建的(说明您必须
2010-08-20 11:27:00
343
转载 WF-Activities之EventDrivenActivity ListenActivity
<br />EventDrivenActivity一个容器,该容器内的第一个结点必需是一个继承 IEventActivity接口的Activity(可以进入idle状态的Activity,如Delay或HandExternalEvent),后面所有的结点可以是任意Activity。IEventActivity阻塞一些没解决的状态,如一个时间状态或一个外部消息的到来。当event完成,IeventActivity 完成运行,后面所有的Activity将执行<br /> <br />EventDrivenAct
2010-08-19 22:06:00
407
转载 了解Windows Workflow Foundation Engine
<br />这几天工作相对比较轻松,闲于时间就了解一下Windows Workflow Foundation Engine.<br /><br />首先看看架构图<br /><br />概述:<br /> 从架构图上看,在最下面的是Host Process层, 从架构图上看到这一部分不是完整的,也就很显示看的出Host Process不是WFF中固有的一部分,这也是WFF的一个特点,他没一个固有的执行过程,而是用用Host Process来处理,而Host Process主要是利用在Windows 平台的
2010-08-19 18:46:00
1257
转载 WF-Activities之EventDrivenActivity ListenActivity
<br />EventDrivenActivity一个容器,该容器内的第一个结点必需是一个继承 IEventActivity接口的Activity(可以进入idle状态的Activity,如Delay或HandExternalEvent),后面所有的结点可以是任意Activity。IEventActivity阻塞一些没解决的状态,如一个时间状态或一个外部消息的到来。当event完成,IeventActivity 完成运行,后面所有的Activity将执行<br /> <br />EventDrivenAct
2010-08-19 18:15:00
412
转载 WorkflowRuntime介绍和使用
<br />WorkflowRuntime简介<br />在Windows Workflow中,活动可以视作提交给工作流处理器执行的指令或代码,而这个工作流处理器就是WorkflowRuntime。为了启动工作流,我们必须托管WorkflowRuntime与工作流服务。<br />Windows Workflow不是单独的应用程序,它和ASP.NET类似, Workflow生存在程序集中(比如System.Workflow.Runtime.dll)。Workflow需要一个用以载入,初始化并启动工作流的Ru
2010-08-19 17:21:00
974
转载 ASP.NET中实现WWF工作流(ManualWorkflowSchedulerService)
将工作流用于 ASP.NET创建 Windows Workflow Foundation 是为了在不同的宿主应用程序环境中运行。 ASP.NET Web 窗体就是一种这样的支持环境。 但是,当为 Windows Workflow Foundation 创建基于 Web 的宿主应用程序时,必须设计宿主基础结构以解决 ASP.NET 应用程序和传统 Windows 窗体应用程序之间的关键体系结构差异。 例如,ASP.NET 应用程序可以同时为多个同步的用户提供服务。 在这种服务器环境中,应用程序的设计方式必须有
2010-08-19 16:45:00
1073
转载 String.Concat 方法
<br />一、概述<br />连接 String 的一个或多个实例,或 Object 的一个或多个实例的值的 String 表示形式。<br />二. 表现形式<br />1. <br />public static string Concat(<br /> objectarg0<br />);参数arg0Object 或空引用(Visual Basic 中为 Nothing)。 返回值<br />arg0 的值的 String 表示形式。备注<br />使用 Empty 字符串替代任何空参数示例us
2010-08-19 12:02:00
476
转载 Windows Workflow学习文档
<br />http://blog.csdn.net/glumtree/archive/2007/09/17/1787920.aspx
2010-08-17 17:34:00
291
转载 C#泛型详解
<br />我们在编写程序时,经常遇到两个模块的功能非常相似,只是一个是处理int数据,另一个是处理string数据,或者其他自定义的数据类型,但我们没有办法,只能分别写多个方法处理每个数据类型,因为方法的参数类型不同。有没有一种办法,在方法中传入通用的数据类型,这样不就可以合并代码了吗?泛型的出现就是专门解决这个问题的。读完本篇文章,你会对泛型有更深的了解。 <br />为什么要使用泛型<br />为了了解这个问题,我们先看下面的代码,代码省略了一些内容,但功能是实现一个栈,这个栈只能处理int数据类型:
2010-08-15 15:40:00
187
转载 c# 泛型集合Dictionary
<br />泛型最常见的用途是泛型集合,命名空间System.Collections.Generic 中包含了一些基于泛型的集合类,使用泛型集合类可以提供更高的类型安全性,还有更高的性能,避免了非泛型集合的重复的装箱和拆箱。 <br /> 很多非泛型集合类都有对应的泛型集合类,我觉得最好还是养成用泛型集合类的好习惯,他不但性能上好而且 功能上要比非泛型类更齐全。下面是常用的非泛型集合类以及对应的泛型集合类:<br /> 非泛型集合类泛型集合类ArrayListList<T>HashTa
2010-08-15 15:32:00
311
转载 通过ConfigurationSection来轻松地加载配置文件
<br />最近写了一段自定义的ConfigurationSection继承类,通过该class可以轻松得定义和读取配置文件信息,<br />注意这里使用的是c# 2.0来实现的,相比1.1必须通过实现IConfigurationSectionHandler接口来自定义配置节点类方便多了<br />不论是web.config还是app.config,都可以使用ConfigurationManager类加载配置文件中自定义的节点内容。<br /><br />以下是配置文件的层次结构:<br /> 1<?xml
2010-08-14 22:45:00
702
转载 数字证书技术
<br />前 言 <br /> 随着Internet在国内的日益普及,以网上银行、网上购物为代表的电子商务已越来越受到人们的重视,深入到普通百姓的生活中。目前,在国内的电子商务中缺少相应的技术手段来保障网上交易的安全性、权威性。众所周知,在常规业务中,交易双方现场交易,可以确认购买双方的身份,即对客户而言,商家是我要购物的地方,而非其他商场。对商家而言,购买者在现场无须担心假冒。同时由于有商场开具的发票和客户现场支付商品费用,无须担心发身纠纷,无凭证可依。但在网上做交易时,由于交易双方并不现场交易,
2010-08-14 22:28:00
463
原创 C#:代表(delegate)和事件(event) (转)
代表(delegate):<br /> 它是C#语言里面的函数指针,代表可以指向某一个函数,在运行的时候调用这个函数的实现。下面来看看它的实现步骤:声明一个delegate对象。 实现和delegate具有相同参数和返回值的函数实现(可以是静态和非静态的)。 产生一个delegate对象的时候,把你刚刚实现的函数作为参数传给他的构造函数。 <br />请看下面例子:<br />using System;<br />using System.Collections.Generic;<br />using Sy
2010-08-13 19:30:00
219
原创 C# where子句(转)
<br />where 子句用于指定类型约束,这些约束可以作为泛型声明中定义的类型参数的变量。<br /> 1.接口约束。<br /> 例如,可以声明一个泛型类 MyGenericClass,这样,类型参数 T 就可以实现 IComparable<T> 接口:<br />public class MyGenericClass<T> where T:IComparable { }<br /> 2.基类约束:指出某个类型必须将指定的类作为基类(或者就是该类本身),才能用作该泛型类型的
2010-08-08 23:14:00
231
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人