• 跟我一起学Windows Workflow Foundation(5)使用activity设计器创建一个整合的定制activity


    Lab01已经完了,lab02中说的是创建自定义的Activity

    Activities是工作流模型的一个可执行单元,它可以被重用,也可以把多个Activities整合成一个Activities。一个工作流可以由多个Activities组成,一个Activities也可以由其他的Activities构成,最终,每个Activities都作为一个可执行单元的形式表现出来。这次,我们来学习创建一个简单的Activity。

    Activities是一个其实类,我们可以为其编写属性,方法和事件----这些属性方法和事件引用自workflow。我们还可以创建Activity并部署到.net程序集中来重用。

    先看第一个:

    使用activity设计器创建一个合成的定制activity

    在这个练习里,我们将创建一个有两个分开的代码段组成的activity,然后我们将在一个工作流项目中使用这个activity,运行这个工作流察看运行结果。

    创建一个新的WF项目

    1. 创建一个名称为CompositeActivitySample顺序工作流控制台应用程序。

    2.

    New Picture (8)

    3. 打开Program.cs查看其代码。

    4. Program.csMain()方法包含了启动,加载和执行和等待工作流完成的示例代码。

    5. 将项目中的Workflow1.cs重命名为HelloWorldWorkflow.cs并在弹出的提示对话框中选择时,修改所有代码引用。

    创建一个Activity项目

    现在我们已经创建了一个工作流项目,我们接下来要创建一个Activity项目来添加到解决方案。

    在这个项目中我们去定制一个新的activity,这个新的activity中我们去添加两个基本的activity --- code的来整合成我们定制的新的activity 。

    1. 新建一个项目,选择“工作流Activity库”,名称为HelloWorldActivityLibrary

    2. 重命名Activity1.cs为HelloWorldActivity.cs。同样在弹出的是否对起所有引用的项目执行重名名提示时选择是。

    3. 打开HelloWorldActivity的设计视图。

    4. 从工具箱中拖拽一个Code activity到我们的设计视图中。

    5. 如图:

    CropperCapture[2]

    CropperCapture[3]

    6. 修改起(Name)属性为writeHello

    CropperCapture[4]

    7. 双击设计视图中的writeHello activity创建一个writeHello_ExecuteCode方法。

    8. 在writeHello_ExecuteCode 方法中输入如下代码:

    Console.Write("Hello, ");

    9. 现在我们回到设计视图,再拖拽第二个Code activity到我们的设计视图中writeHello的下面,并修改(Name)属性为writeWorld

    10. 双击设计视图中的writeWorld activity创建一个writeWorld _ExecuteCode方法。

    11. 在 writeWorld _ExecuteCode 方法中输入如下代码:

    Console.WriteLine("World");

     

    生成工作流解决方案

    现在我们将刚刚创建的这个activity添加到工作流中,并运行察看效果。

    1. 我们点“生成---生成解决方案”或者直接点F6来生成解决方案。

    2. 选择CompositeActivitySample项目中的HelloWorldWorkflow.cs来打开设计视图。

    3. 这时,我们可以看到工具箱中会出现新的组件栏:

    4.

    5. 拖拽HelloWorldActivity到我们HelloWorldWorkflow的工作流设计视图中,并且把这个activity的(Name)属性修改为helloWorld

    New Picture (10)

    6. 现在我们把CompositeActivitySample作为启动项目按ctrl+f5查看运行结果吧。

    7. .

    8. 这里我们创建的这个activity按照顺序工作流的形式进行了执行。打印出“Hello,World”

    9. 现在我们应该已经知道怎样创建一个简单的合成的activity了吧 :)

  • 相关阅读:
    如何在Ubuntu Server 18.04上安装Microsoft的Procmon
    如何在Ubuntu 20.04上安装Wine 5.0
    如何在Kali Linux 2020中启用SSH服务
    如何在Ubuntu 20.04 LTS Focal Fossa上安装Apache Groovy
    如何使用命令在Ubuntu 20.04 Linux上安装Vmware Tools
    在Ubuntu 20.04 LTS Focal Fossa上安装Zabbix Agent
    hdu 2089 不要62
    hdu 2093 成绩排名
    hdu 2104 hide handkerchief
    leetcode147对链表进行插入排序
  • 原文地址:https://www.cnblogs.com/cxd4321/p/879726.html
Copyright © 2020-2023  润新知