WF4工作流基础总结
- 使用CS文件(VB文件)或者XAML文件均可以创建工作流节点
- 代码文件继承System.Activities.Activity或者它的子类创建新的节点类
- 代码创建的节点类可以用于实现某个业务逻辑后,用于更大型的业务过程
- XAML可以在设计器中打开编辑
- XAML可以设定属性支持动态式工作流(运行时才确定加载和运行)
- 启动工作流的方式,最简单的是用WorkflowInvoke.Invoke方法进行
- 使用与调用程序相同的线程运行工作流
- 更灵活的方式是使用WorkflowApplication类的实例
- 可以提供Completed动作完成输出参数的接收及有关线程信息的获取
- 提供多线程支持
- 学习过的activity包括
- WriteLine节点,相当于Console.WriteLine方法
- CodeActivity类,作为代码形式创建节点的父类
- Assign节点,用于给工作流参数或变量赋值
- Sequence节点,提供一个容器空间以便包容多个节点
- If节点,提供一个条件判断和对真假结果的不同分支处理
- TryCatch节点,赋予工作流捕捉意外和处理错误的能力
- Throw节点,抛出新的意外
- 节点设计器的有关信息
- 节点可以设定参数Parameters,可以是输入、输出或输入输出等方向,代表流入或流出工作流的数据
- 节点可以设定变量Variables,用于储存节点范围内的数据
- 节点可以输入Imports命名空间,用于在使用类的时候可以更加简单
- 关于节点属性表达式
- 必须使用VB表达式,例如用&表示字符串连接,OR表示或逻辑操作
- 字符串表达式必须用双引号括起来
- 测试驱动开发TDD
- 根据需求,先编写测试方法,在实现功能前测试必须失败
- 再去实现需求让测试通过
- 关于测试Assert类
- AreEqual:比较预期值与实际值是否相同
- AreNotEqual:比较预期值与实际值是否不相同
- AreSame:比较预期对象与实际对象是否是同一对象(地址一致)
- IsTrue:验证给定表达式是否为真
- IsFalse:验证给定表达式是否为假
- IsNull:验证给定表达式是否为null
- IsNotNull:验证给定表达式是否不为null
- IsInstanceOfType:验证给定对象是否为指定的类型
- IsNotInstanceOfType:验证给定对象是否不为指定的类型