在上一篇文章中已經介紹過在Visual Studio 2010開發的工作流中使用Custom Task Edit Page,但實際情況中,一個工作流可能包含多個task,因此我們需要使用多個custom task edit page。此時,將不再需要'Workflow'元素的'TaskListContentTypeId'屬性。
項目文件結構如圖(本人依舊比較懶,沒有改文件的默認名稱):
對了,上一篇文章中忘了說明,這些custom task edit page是通過添加'Application Page'生成的。
列表結構很簡單,新建一個'Custom List',然後新建五個字段'Director','Manager' -- User類型,'Director Comment','Manager Comment' -- Text類型,'Expense Account' -- Number類型。
Workflow的Elements.xml文件如圖:
該流程模擬一個審批流程,如果'Expense Account'的大於1000時,不需要Director進行審批,直接由Manager進行審批;若Director拒絕後,流程直接結束。
工作流的設計視圖如下:
具體內容可以參考源代碼。
Summary
此例子的需要注意以下幾點:
1. 使用'CreateTaskWithContentType'活動;
2. HashTable的key值不能包含空格;