顯示具有 WF 標籤的文章。 顯示所有文章
顯示具有 WF 標籤的文章。 顯示所有文章

2010年7月15日 星期四

在IIS 7建應用程式指令

三不五時要在IIS 7建應用程式, 寫批次檔比較快, 將以下儲存成bat後執行
記得改網站程式所在路徑
就可在IIS下建立MyTestWeb
============================================================================
@echo off
REM 建立IIS應用程式與ApplicationPool
set appcmd=%systemroot%\system32\inetsrv\appcmd.exe

REM 設定Web應用程式路徑
set MyTestWeb="C:\temp\MyTestWeb"

REM 若應用程式存在先刪除
%appcmd% delete APP "Default Web Site/MyTestWeb"

REM 刪除ApplicationPool
%appcmd% delete apppool "MyTestWebPool"

REM 建立 ApplicationPool
%appcmd% add apppool /name:MyTestWebPool /managedRuntimeVersion:v4.0

REM 設ApplicationPool執行帳號
%appcmd% set config /section:applicationPools /[name='MyTestWebPool'].processModel.identityType:LocalService

REM 建立應用程式
%appcmd% add APP /site.name:"Default Web Site" /path:/MyTestWeb /physicalpath:%MyTestWeb%
%appcmd% set app /app.name:"Default Web Site/MyTestWeb" /applicationPool:MyTestWebPool

REM 組態
REM %appcmd% set config "Default Web Site/MyTestWeb" /section:access /sslFlags:Ssl /commit:APPHOST

2009年2月24日 星期二

To WF Or Not To WF?

自微軟在PDC2008 研討會上發表WF 4.0 在.NET Framework 4.0時,將引進一個全新的WF Workflow模型,大概又有一堆人要慶幸:幸好我還沒學 3.0 吧!!當然此舉引起各界譁然! It change everything. (想當然爾,哎!)
雖然號稱在Visual Studio 2010中能支援開發.NET Framework 3.5版的WF,所以你不用重寫目前WF 3.0的程式碼;但也很明白的說,如果希望使用到WF 4.0的新模型帶來的好處,你還是得乖乖的,改用新模型來寫程式!
對WF 4.0有興趣的話可以參考: WCF And WF Services In The .NET Framework 4.0 And Dublin
以及:Windows Workflow Changes Direction

2009年1月17日 星期六

Step-By-Step教學(20):在流程中呼叫其它流程

本教學將介紹如何設計一個MyFlow1流程專案,與一個MyFlow2流程專案,在MyFlow1流程專案中,呼叫MyFlow2流程程式!

1.建立一個WF 循序工作流程專案,MyFlow1:
2.從Toolbox將Code拉到流程設計畫面:


3.選取畫面上CodeActivity1,設ExecuteCode屬性為SayHi,進入事件處理常式
4.加入以下程式碼到事件處理常式

1 private void SayHi(object sender, EventArgs e)

2 {

3 Console.WriteLine("Hello");

4 }


5.在方案中加入一個新MyFlow2循序工作流程專案,到目前方案

6.重複3,4步驟,但步驟四個程式改為

1 private void SayHi(object sender, EventArgs e)

2 {

3 Console.WriteLine("World");

4 }


7.從Sloution Explorer,MyFlow1專案,按鼠右鍵,選加入參考,從專案頁,選取MyFlow2,參考MyFlow2專案
8.Build Solution
9.在MyFlow1設計畫面中,從Toolbox將InvokeWorkFlow拉到流程設計畫面CodeActivity1下
10.設定invokeWorkFlowActivity1的TargetWorkFlow屬性,選取MyFlow2.Workflow1
12.畫面看起來為:
13.在方案中加入一個新MyConHost主控台應用程式專案到目前方案,當作裝載主程式
14.在MyConHost專案加入參考
15.在MyConHost專案加入MyFlow1參考
16.在MyConHost專案加入以下組件參考
17.在MyConHost專案Program.cs加入以下程式碼,啟動MyFlow1.Workflow1流程

1 using System;

2 using System.Collections.Generic;

3 using System.Linq;

4 using System.Text;

5 using System.Threading;

6 using System.Workflow.Runtime;

7 namespace MyConHost

8 {

9 class Program

10 {

11 private static AutoResetEvent waitHandle = new AutoResetEvent(false);

12 static WorkflowRuntime rt = null;

13 static WorkflowInstance inst = null;

14 static void Main(string[] args)

15 {

16 rt = new WorkflowRuntime();

17 rt.StartRuntime();

18 rt.WorkflowCompleted += new EventHandler<WorkflowCompletedEventArgs>(rt_WorkflowCompleted);

19 rt.WorkflowTerminated += new EventHandler<WorkflowTerminatedEventArgs>(rt_WorkflowTerminated);

20 inst = rt.CreateWorkflow(typeof(MyFlow1.Workflow1));

21 inst.Start();

22 waitHandle.WaitOne();

23 }

24 static void rt_WorkflowTerminated(object sender, WorkflowTerminatedEventArgs e)

25 {

26 Console.WriteLine("WorkflowTerminated" + e.Exception.Message);

27 waitHandle.Set();

28 }

29 static void rt_WorkflowCompleted(object sender, WorkflowCompletedEventArgs e)

30 {

31 Console.WriteLine("WorkflowCompleted");

32 waitHandle.Set();

33 }

34 }

35 }


18執行結果:


下載程式

2009年1月5日 星期一

WF的WorkflowMonitor工具

WF提供一個WorkflowMonitor工具,可以使用圖型介面來監控流程運作,要使用時可以從微軟網站下載.不過若使用Visual Studio 2008開啟C#版專案,將無法順利編譯,以下是修訂完可順利編譯的版本:

總網頁瀏覽量