前段時間需要在乙個專案中用到工作流,因為以前從來沒有接觸過,所以沒辦法,學吧!
首先說明一下,寫這個系列的文章只是為了當自己的學習筆記所用,因為是新手,所以錯誤在所難免。如果有什麼不對,還請各位大牛不要拍磚。
工作流是一類能夠完全或者部分自動執行的經營過程,它根據一系列過程規則、文件、資訊或任務能夠在不同的執行者之間進行傳遞與執行。
今天我們的目標:
1.建立乙個順序工作流控制台應用程式。
2.工作流中最簡單的資料傳遞(宿主應用程式傳遞到工作流)
3.使用workflow進行程式設計
我們以最簡單的乙個判斷輸入是否合法程式來做演示。建立乙個順序工作流控制台應用程式
1.開啟visual studio 2008。
2.新建乙個順序工作流控制台應用程式。
3.輸入名稱之後點選確定會出現以下介面
4.因為我們要做判斷,所以我們在工具箱中找到ifelse。將它拖入到我們的設計介面上。
5.可以看到上圖很明顯的乙個紅色感嘆號。顯示「未設定屬性"condition"」。那麼我們單擊他,轉到屬性視窗。
6.如上圖所示,選擇condition下拉列表中的**條件,再輸入處理事件的名稱。vs會自動的生成處理**。
7.現在我們需要將我們的workflow賦予一種從宿主應用程式獲得引數的能力。我們通過get/set來實現。
private
string
str;
public
string
strset
}8.現在我們來編寫處理**。在我們剛才的isok的事件處理程式中輸入以下**。來作為我們判斷是否合法的標準。
if(str =="
admin")
else
9."e.result"是**條件判斷的標準。假如為true,那麼workflow將從左邊分支執行。反之。我們剛才只是建立了ifelse,並沒有建立分支的處理程式。現在我們返回設計介面。向左右的分支拖入code控制項。
10.仍然讓我們設定執行**。點選設定。vs仍然會自動生成事件處理程式。我們在左邊分支的處理**中插入以下**
console.writeline(
"it's ok!!!");
在右邊分支的處理**中插入以下**
console.writeline(
"it's not ok!!!");
至此。我們的workflow**編寫完畢。現在我們需要稍稍的修改下我們的program.cs檔案。開啟program.cs檔案。找到
workflowinstance instance = workflowruntime.createworkflow(typeof...
在其上面插入以下**用作傳遞引數到workflow中。
console.writeline(
"enter a word:");
string
str
=console.readline();
dictionary
<
string
, object
>
dic
=new
dictionary
<
string
, object
>
();dic.add(
"str
", str);
修改剛才那句**為:
workflowinstance instance
=workflowruntime.createworkflow(
typeof
(workflowtest1.workflow1),dic);
現在編譯執行我們的**。
輸入"admin"後我們將看到以下結果
如果輸入的非"admin"的話。
至此。我們的第乙個workflow程式就完成了。是不是感覺很簡單?
注:本人是web安全愛好者,希望各位對這方面有興趣的朋友多多聯絡。e-mail:alert007(at)qq.com
C 學習筆記27 WorkFlow
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!wf從入門到精通系列 翻譯 wf從入門到精通 第一章 wf簡介 翻譯 wf從入門到精通 第二章 workflow執行時 翻譯 wf從入門到精通 第三章 workflow例項 翻譯 wf從入門到精通 第四章 活動及workflow型別介紹 翻譯 wf...
workflow4 0學習資料
wf4 bata 2 wf4.0 rc 對比beta2 的變化 wf4.0 基礎篇 一 開始使用 wf wf4.0 基礎篇 二 activity 介紹及writeline activity 的使用 wf4.0 基礎篇 三 流程例項 與設計wf 程式的基本原則 wf4.0 基礎篇 四 順序容器 seq...
workflow 服務概述
活動是工作流的基本單元。以程式設計方式將活動新增到工作流中,與向根節點新增 xml dom 子節點的方式類似。當給定流路徑中的所有活動都完成執行時,工作流例項即完成。活動可以執行單個操作,如向資料庫寫入值,也可以執行復合活動幷包含一組活動。活動有兩種行為型別 執行時和設計時。執行時行為在執行時指定操...