microsoft sequential workflow tutorial website:http://msdn.microsoft.com/en-us/library/ms734794(v=vs.90).aspx.

after reading this tutorial,i found three bugs:

1.the name of workflow project is the same as a class file name,both of them named "ExpenseReportWorkflow",which can cause compilction failed。

for example:

  1. this.rejectEvent.InterfaceType = typeof(ExpenseReportWorkflow.IExpenseReportService);

please modify any of them;

2.the attribute of the interface IExpenseReportService should be ExternalDataExchangeAttribute

  1. [ExternalDataExchangeAttribute]
  2. public interface IExpenseReportService
  3. {
  4. /// <summary>
  5. /// host appliation implements the Methods which will be called by workflow
  6. /// </summary>
  7. /// <param name="message"></param>
  8. void GetLeadApproval(string message);
  9. void GetManagerApproval(string message);
  10. /// <summary>
  11. /// 用于通知工作流特定的事件已经发生
  12. /// 例如用户在界面中点击了同意按钮
  13. /// </summary>
  14. event EventHandler<ExternalDataEventArgs> ExpenseReportApproved;
  15. event EventHandler<ExternalDataEventArgs> ExpenseReportRejected;
  16. }

3.for running this demo continuously,you'd better modify the submitButton_Click method as below:

  1. if (properties.ContainsKey("Amount"))
  2. {
  3. //properties.Add("Amount", Int32.Parse(this.amount.Text));
  4. properties["Amount"] = Int32.Parse(this.amount.Text);
  5. }
  6. else
  7. properties.Add("Amount", Int32.Parse(this.amount.Text));
  8.  
  9. Type type =typeof(ExpenseReportWorkflowProject.ExpenseReportWorkflow);
  10. this.workflowInstance = workflowRuntime.CreateWorkflow(type, properties);
  11. this.workflowInstance.Start();

finally,u can download the completed solution here

completed solution matches microsoft sequential workflow tutorial的更多相关文章

  1. Creating a SharePoint Sequential Workflow

    https://msdn.microsoft.com/en-us/library/office/hh824675(v=office.14).aspx Creating a SharePoint Seq ...

  2. Microsoft.Office.Workflow.Actions Namespace

    Microsoft.Office.Workflow.Actions Namespace SharePoint 2010   Contains the workflow activities that ...

  3. Shortcut Collapse project or projects in the Solution Explorer Microsoft Visual Studio 2008

    The standard windows keyboard shortcuts for expanding and collapsing treeviews are: Numeric Keypad * ...

  4. This task is currently locked by a running workflow and cannot be edited

    转自:http://geek.hubkey.com/2007/09/locked-workflow.html 转自:http://blogs.code-counsel.net/Wouter/Lists ...

  5. 【翻译习作】 Windows Workflow Foundation程序开发-第一章05

    1.3      开发我们的第一个工作流 也许你曾经在这样的产品经理手下搞过开发:他总是在你身边转悠,并不时的问一句“你还没做完吗?”.在这一部分,我们将用一个简单的Windows Workflow程 ...

  6. [SharePoint 2010]Sandboxed Solution (沙箱解決方案)

    現有的SharePoint 2007系統中,我們如果要安裝客製化的程式碼到系統中,我們必須製作一個解決方案包裝檔(Solution Package),然後在系統的中央管理後台中,真對整個伺服器農場Fa ...

  7. 《WF in 24 Hours》读书笔记 - Hour 1 - Understanding Windows Workflow Foundation

    1.1 Hour 1 - Understanding Windows Workflow Foundation   1.1.1 What workflow is in general A workflo ...

  8. 创建一个dynamics CRM workflow (一) - Introduction to Custom Workflows

    Workflow: Use this process to model and automate real world business processes. These processes can ...

  9. Microsoft Certification List

    Exam Title Files 70-178 Microsoft Project 2010, Managing Projects 16 70-243 Administering and Deploy ...

随机推荐

  1. Java单例模式实现(线程安全)

    package com.javaee.corejava; /** * 线程安全的单例模式 * @author miaoyf * */ public class Singleton { /** * 私有 ...

  2. windows和linux实现文件共享

    linux和windows实现共享,需要安装samba服务器 安装步骤: 1.查看是否已经安装samba rpm -q samba 2.如果已经安装,如果你想再次安装,可以卸载 rpm -e samb ...

  3. OAF_开发系列08_实现OAF通过Popup参数式弹出窗口(案例)

    20150711 Created By BaoXinjian

  4. JLINK通过JFLASH烧写bin文件报错处理方法

    错误原因:烧写开始地址出错,打开BIN文件后弹出的设置开始地址不正确不能为0 解决措施:用J-FLASH LITE或者将开始地址设置成正确的地址(KEILMDK中IROM1的开始地址

  5. javascript网址收集

    1.模块的写法http://www.ruanyifeng.com/blog/2012/10/javascript_module.html 2.模块规范 AMDhttp://www.ruanyifeng ...

  6. 合并两个java bean对象非空属性(泛型)

    import java.beans.BeanInfo; import java.beans.Introspector; import java.beans.PropertyDescriptor; cl ...

  7. pyqt5安装

    花了一天时间,终于是装好了. 这东西硬是把我从Python2掰弯成了Python3 本来用pip安装了一个pyqt,但是后来才发现,这是个x64版本的. 我不知道啊! 我以为是还要装qt5 所以我把q ...

  8. 反转链表,时间复杂度O(n),空间复杂度O(1)

    原理:使用三个指针,p,q指向交换的元素,r指向后续元素 代码如下: class Node{ int data; Node next; Node(int data){ this.data=data; ...

  9. PHP常用函数(1)

    1. create_linkstring 说明: 把数组拼接成字符串 if (!function_exists('create_linkstring')) { /** * 把数组所有元素,按照“参数= ...

  10. Map接口

    Map实现的包括HashMap 和TreeMap .建议使用HashMap ,效率更高.并且允许使用null值,单是必须保证键的唯一性,TreeMap不允许有空.在添加删除和定位映射关系的时候不如Ha ...