日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
詳解VisualStudio2010中WF4.0的應(yīng)用

本文將為大家介紹的Windows Workflow 4.0在Visual Studio 2010中的相關(guān)應(yīng)用,希望簡(jiǎn)短的文章能為大家搞好Workflow 4.0開發(fā)有所幫助。

為天峨等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及天峨網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、天峨網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!

#T#

最近在虛擬機(jī)中安裝了Visual Studio 2010。界面是WPF的,CPU和內(nèi)存占用不是很夸張,打開一個(gè)很簡(jiǎn)單的附帶的Lab Project, CPU使用率一般在20%一下,內(nèi)存使用不到800M。

言歸正傳,還是來(lái)介紹Windows Workflow 4.0。

與3.5相比工作流模型有了很大改變和不同。

我們知道3.5中工作流都是托管在WorkflowRuntime中的,通過(guò)WorkflowRuntime來(lái)創(chuàng)建、執(zhí)行工作流實(shí)例;在4.0中沒(méi)有WorkflowRuntime類,可以方便的直接創(chuàng)建WorkflowInstance實(shí)例和執(zhí)行工作流。Lab中代碼如下:

 
 
  1. WorkflowInstance myInstance = new WorkflowInstance(new SayHello(),  
  2.                  new SayHelloInArgs(userName));  
  3.              myInstance.OnCompleted = delegate(WorkflowCompletedEventArgs e)  
  4.              {  
  5.                  Console.WriteLine("*** OnCompleted delegate is running on thread {0} ***",  
  6.                      Thread.CurrentThread.ManagedThreadId);  
  7.                  SayHelloOutArgs outArgs = new SayHelloOutArgs(e.Outputs);  
  8.                  greeting = outArgs.Greeting;  
  9.                  syncEvent.Set();  
  10.              };  
  11.              myInstance.OnUnhandledException = delegate(WorkflowUnhandledExceptionEventArgs e)  
  12.              {  
  13.                  Console.WriteLine(e.UnhandledException.ToString());  
  14.                  return UnhandledExceptionAction.Terminate;  
  15.              };  
  16.              myInstance.OnAborted = delegate(WorkflowAbortedEventArgs e)  
  17.              {  
  18.                  Console.WriteLine(e.Reason);  
  19.                  syncEvent.Set();  
  20.              };  
  21.              myInstance.Run(); 

4.0中有一個(gè)WorkflowInvoker類,這個(gè)類也可以執(zhí)行工作流,只不過(guò)這個(gè)類是用來(lái)測(cè)試工作流的,這很大的改進(jìn)了前一版本中工作流難以測(cè)試的問(wèn)題。

 
 
  1. [TestMethod]  
  2.        public void ShouldReturnGreetingWithName()  
  3.        {  
  4.            Dictionary input = new Dictionary()  
  5.            {  
  6.                {"UserName", "Test"}  
  7.            };  
  8.            IDictionary output;  
  9.            output = WorkflowInvoker.Invoke(new SayHello(), input);  
  10.            Assert.AreEqual("Hello, Test from Workflow 4", output["Greeting"]);  
  11.        } 

3.5中Activity是所有活動(dòng)的基類,要實(shí)現(xiàn)自定義活動(dòng),只需重寫Activity 的Execute()方法;在4.0中所有的活動(dòng)都是從抽象類WorkflowElement派生出來(lái)的,而且Visual Studio中默認(rèn)自定義活動(dòng)都是從CodeActivity或CodeActivity繼承的,相似的是也需要重寫Execute()方法,從而實(shí)現(xiàn)自定義執(zhí)行邏輯。

 
 
  1. public class MyActivity1 : CodeActivity  
  2.   {  
  3.       protected override void Execute(CodeActivityContext context)  
  4.       {  
  5.           //你的實(shí)現(xiàn)代碼  
  6.       }  
  7.   } 

當(dāng)然,你還是可以從Activity派生自定義活動(dòng),不過(guò)與3.5有很大不同。

 
 
  1. public class SayHelloInCode : Activity  
  2.    {  
  3.        protected override WorkflowElement CreateBody()  
  4.        {  
  5.            return new Sequence()  
  6.            {  
  7.                Activities =  
  8.                {  
  9.                    new WriteLine()  
  10.                    {  
  11.                        Text = "Hello Workflow 4 in code" 
  12.                    }  
  13.                }  
  14.            };  
  15.        }  
  16.    } 

4.0中新增加的工作流服務(wù)功能,可以直接把工作流發(fā)布為WCF服務(wù),當(dāng)然工作流也必須設(shè)計(jì)為具有WCF應(yīng)答功能才行。4.0提供4個(gè)與WCF相關(guān)的活動(dòng):Receive、ReceiveReply、Send、SendReply,通過(guò)這些活動(dòng)可以可視化定義WCF的服務(wù)操作。

4.0中實(shí)現(xiàn)了工作流設(shè)計(jì)器的基本模型,可以很容易的實(shí)現(xiàn)自定義設(shè)計(jì)器。


當(dāng)前文章:詳解VisualStudio2010中WF4.0的應(yīng)用
當(dāng)前鏈接:http://www.dlmjj.cn/article/coicppi.html