欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
基礎: Windows Workflow Foundation 中的跟蹤服務(wù)(轉與 MSDN)
Windows Workflow Foundation 中的跟蹤服務(wù)
Matt Milner
Get the sample code for this article.
NEW:Explore the sample code online!
- or -
代碼下載位置:Foundations2007_03.exe (178KB)
目錄
跟蹤體系結構
跟蹤配置文件
SQL 跟蹤服務(wù)
查詢(xún)跟蹤數據
自定義跟蹤服務(wù)
Windows Workflow Foundation 中最強大的功能之一是跟蹤。它使您能夠監控事件、活動(dòng)屬性以及您的工作流中的自定義數據。在本專(zhuān)欄中,我將檢查跟蹤基礎結構、向您介紹如何使用內置的基于 SQL Server™ 的跟蹤服務(wù)以及如何為各種應用創(chuàng )建自定義跟蹤服務(wù)。順著(zhù)這一思路,我將演示如何使用所跟蹤的信息以及如何通過(guò)使用跟蹤來(lái)滿(mǎn)足一些常見(jiàn)的需求。
許多應用程序需要了解程序邏輯和處理步驟的執行。這有助于企業(yè)遵守法規,根據執行里程碑或各種其他原因來(lái)管理風(fēng)險列表。Windows® Workflow Foundation 提供了靈活的基礎結構,您可以在其中覆蓋您的自定義實(shí)現,而不必為各應用程序創(chuàng )建不同的跟蹤系統。這簡(jiǎn)化了開(kāi)發(fā)模型,使您可以關(guān)注于跟蹤的業(yè)務(wù)要求。
跟蹤體系結構
當在 Windows Workflow Foundation 中承載工作流時(shí),您既可以承載工作流運行庫,也可以承載一組運行時(shí)服務(wù)。許多運行時(shí)服務(wù)(如持久性服務(wù))必須最多有一個(gè)在運行庫中注冊的實(shí)例。跟蹤服務(wù)是個(gè)例外,允許將多個(gè)跟蹤服務(wù)添加到運行庫中以支持不同的業(yè)務(wù)要求。這使您能夠將若干不同的跟蹤任務(wù)應用于一個(gè)應用程序,各跟蹤服務(wù)負責特定的實(shí)現。
Windows Workflow Foundation 中的跟蹤基于中央偵聽(tīng)器,偵聽(tīng)器可監控活動(dòng)和工作流事件并將相應的數據發(fā)送到各個(gè)配置的跟蹤服務(wù)。(這種體系結構如圖 1 所示。)跟蹤偵聽(tīng)器接收所有事件的通知,但多數情況下,只有這些事件中的一個(gè)子集是有用的。而且,如果您要使用多個(gè)跟蹤服務(wù),各任務(wù)有可能將只關(guān)注于唯一一個(gè)信息子集。因此,跟蹤偵聽(tīng)器將查詢(xún)各配置的跟蹤服務(wù)以跟蹤各類(lèi)工作流的配置文件。
圖 1 跟蹤體系結構 (單擊該圖像獲得較小視圖)
圖 1 跟蹤體系結構 (單擊該圖像獲得較大視圖)
跟蹤配置文件為偵聽(tīng)器提供關(guān)于跟蹤服務(wù)要接收的事件的類(lèi)型的信息。這些事件可以分為三類(lèi):工作流、活動(dòng)和用戶(hù)。
工作流事件使您能夠跟蹤工作流可能處于的各種狀態(tài),以及它們發(fā)生的時(shí)間。對于包含自定義事件參數的事件,如 WorkflowTerminated 或 WorkflowCompleted,事件參數本身可被跟蹤,并隨后被查詢(xún)。
活動(dòng)事件使您能夠跟蹤活動(dòng)進(jìn)入特定狀態(tài)的時(shí)間和活動(dòng)進(jìn)入該狀態(tài)時(shí)具體的活動(dòng)屬性值。例如,如果您有一個(gè)發(fā)送電子郵件的活動(dòng),當活動(dòng)進(jìn)入 Closed 狀態(tài)時(shí),您可以跟蹤 To 地址屬性。
最后,用戶(hù)事件使您可以在您的工作流或活動(dòng)中手動(dòng)跟蹤數據。
跟蹤配置文件
每個(gè)跟蹤服務(wù)都必須向跟蹤偵聽(tīng)器提供跟蹤配置文件。一個(gè)服務(wù)可以為所有工作流提供相同的配置文件,也可以為不同類(lèi)型的工作流提供不同的配置文件。由服務(wù)編寫(xiě)者確定管理和生成配置文件的方式。
可使用在 System.Workflow.Runtime.Tracking 命名空間中或直接在 XML 中找到的對象模型來(lái)創(chuàng )建跟蹤配置文件。通常使用對象模型來(lái)創(chuàng )建它們,但這不是表示配置文件的唯一方法,也并非最佳方法。因此,跟蹤配置文件可被序列化到 XML,也可以從 XML 反序列化。您可以使用 TrackingProfileSerializer 類(lèi)將 TrackingProfile 對象轉換為 XML 文本,反之亦然。Windows SDK 中的 Tracking Profile Designer(跟蹤配置文件設計器)示例是與此有關(guān)的一個(gè)有用示例,也是基本跟蹤配置文件編輯的一個(gè)不錯工具。該應用程序使您能夠使用工作流設計圖面可視化地定義跟蹤配置文件。盡管該工具有一些局限性,如缺乏對用戶(hù)跟蹤點(diǎn)的支持,但它可使您查看序列化形式的跟蹤文件。在許多情形下,它還可加快開(kāi)發(fā)和部署跟蹤配置文件的速度。
跟蹤配置文件實(shí)質(zhì)上是一組跟蹤點(diǎn)。各跟蹤點(diǎn)與被跟蹤的事件的類(lèi)型相關(guān),為運行庫提供了關(guān)于何時(shí)提取數據以及提取哪些數據的信息。例如,要指明應跟蹤的工作流事件,WorkflowTrackPoint 必須被添加到跟蹤配置文件中。跟蹤點(diǎn)包含一個(gè)或多個(gè)跟蹤位置,這些跟蹤位置實(shí)際定義了跟蹤數據的位置和時(shí)間。例如,在 WorkflowTrackPoint 中,MatchingLocation 屬性可識別各種要跟蹤的工作流事件。圖 2 中的代碼顯示了要創(chuàng )建的跟蹤配置文件。它有一個(gè) WorkflowTrackPoint,指明了服務(wù)要跟蹤失敗條件(如異常、終止和工作流終止)。
ActivityTrackPoint 支持更豐富的跟蹤。由于活動(dòng)構成了工作流的核心,因此這是符合邏輯的。ActivityTrackPoint 包含 MatchingLocations 和 ExcludedLocations 集合,使您能夠密切控制數據收集的時(shí)間。對于上述兩個(gè)集合,您可以定義代表您要匹配的條件集合的 ActivityTrackingLocation。
ActivityTrackingLocation 類(lèi)使您能夠定義您要根據其類(lèi)型進(jìn)行跟蹤的活動(dòng)。您還可以指明您是否要匹配派生的活動(dòng)。例如,如果您要匹配所有活動(dòng),則應當使用 System.ComponentModel.Activity 類(lèi)型并將 MatchDerivedTypes 設置為 True。這樣就能匹配所有基礎活動(dòng)類(lèi)以及由其派生的所有活動(dòng)。您還可以將此信息添加到 ActivityTrackPoint 的 MatchingLocations 集合以指明您要跟蹤這些事件,或者將此信息添加到 ExcludedLocations 集合以指明該數據不應被收集。
為了進(jìn)行更詳細的控制,您可以指定為跟蹤數據必須滿(mǎn)足的條件(以屬性等式的形式)。例如,您可能選擇僅當 SendEmail 活動(dòng)的優(yōu)先級屬性設置為 High 時(shí)才跟蹤電子郵件。圖 3 顯示了這樣一個(gè)示例。
您還能夠以屬性值的形式從活動(dòng)或工作流提取數據。例如,當在工作流中到達您的匹配位置時(shí),您可以跟蹤 SendEmail 活動(dòng)的 To 和 Subject 屬性??梢酝ㄟ^(guò)將 ActivityDataTrackingExtract 或 WorkflowDataTrackingExtract 項添加到 ActivityTrackPoint 的 Extracts 集合來(lái)實(shí)現此跟蹤。每個(gè) ActivityDataTrackingExtract 都可識別要提取并發(fā)送到跟蹤服務(wù)的成員。將數據提取添加到活動(dòng)跟蹤點(diǎn),這樣被跟蹤的 To 和 Subject 屬性就如下所示:actTrack.Extracts.Add(new ActivityDataTrackingExtract("To"));actTrack.Extracts.Add(new ActivityDataTrackingExtract("Subject"));
 
三種類(lèi)型中最靈活的是可以識別最后跟蹤點(diǎn)的 UserTrackPoint。有時(shí),您需要跟蹤來(lái)自工作流但不可用作活動(dòng)屬性的數據?;蛘呖赡苄枰褂?ActivityTrackingLocation 中簡(jiǎn)單條件支持以外的邏輯。在這種情況下,您可以調用 ActivityExecutionContext 或 Activity 類(lèi)中的 TrackData 方法。這使您可以將數據與數據項的可選密鑰或名稱(chēng)發(fā)送到跟蹤偵聽(tīng)器。對于接收該數據的跟蹤服務(wù),必須定義具有正確匹配位置的 UserTrackPoint。您還可以定義工作流和活動(dòng)數據提取,以便在 UserTrackPoint 匹配時(shí)跟蹤工作流或當前活動(dòng)的屬性。
SQL 跟蹤服務(wù)
Windows Workflow Foundation 包括 SQL Server 跟蹤服務(wù),該服務(wù)使您能夠定義某個(gè)工作流類(lèi)型的跟蹤配置文件并將其部署到 SQL Server。在運行時(shí),跟蹤服務(wù)使用該配置文件以配置跟蹤偵聽(tīng)器。SQL Server 跟蹤服務(wù)包括幾個(gè)出色的功能,如配置文件版本管理、配置文件更新通知和數據劃分。
通過(guò)調用 UpdateTrackingProfile 存儲過(guò)程并在系列化配置文件中進(jìn)行傳遞,可將跟蹤配置文件部署到 SQL 跟蹤服務(wù),其中包括工作流類(lèi)型信息和版本號。您可以使用此存儲過(guò)程來(lái)插入特定于您的工作流類(lèi)型的跟蹤配置文件,但每次更新配置文件時(shí)您必須使用唯一的版本號。我前面所談到的 TrackingProfileSerializer 使您能夠獲得配置文件的 XML 文本,這樣,您就能將其傳遞到存儲過(guò)程。
如果您沒(méi)有為您的工作流類(lèi)型指定跟蹤文件,SQL 跟蹤服務(wù)將使用 UseDefaultProfile 設置以確定它是否應為跟蹤偵聽(tīng)器提供默認的配置文件。默認配置文件可跟蹤工作流的所有狀態(tài)事件和所有活動(dòng)。它還包括匹配位置,以跟蹤所提交的任何用戶(hù)跟蹤事件。如果您不需要此默認行為,當配置 SQL 跟蹤服務(wù)時(shí),則需要將 UseDefaultProfile 屬性設置為 False。只有指定了配置文件的那些工作流類(lèi)型才被跟蹤。
為了確保跟蹤服務(wù)是最新的,跟蹤偵聽(tīng)器會(huì )定期詢(xún)問(wèn)各跟蹤服務(wù)所收到的配置文件。為了避免重復加載或創(chuàng )建跟蹤配置文件,跟蹤服務(wù)可以實(shí)現 IProfileNotification 接口。為此定義了兩種事件:ProfileUpdated 和 ProfileRemoved。當跟蹤服務(wù)實(shí)現此接口時(shí),跟蹤偵聽(tīng)器不會(huì )查詢(xún)更新配置文件信息,除非發(fā)生這些事件之一。為了支持此模型,SQL Server 跟蹤服務(wù)會(huì )定期查詢(xún)數據庫(默認情況下,每 60 秒查詢(xún)一次)以確定工作類(lèi)型的跟蹤配置文件是否已被更新或刪除。您可以配置服務(wù)查詢(xún)更新的頻率,方法是將 ProfileChangeCheckInterval 屬性設置為表示輪詢(xún)之間微秒數的值。
由于在運行環(huán)境中,跟蹤數據可以迅速累積,SQL 跟蹤服務(wù)支持數據劃分。您可以通過(guò)配置來(lái)按天、周、月或年來(lái)劃分數據,服務(wù)將會(huì )為各時(shí)間段創(chuàng )建跟蹤表。另外,您可以控制是按需移動(dòng)數據(這樣就可以為其預定停機時(shí)間),還是自動(dòng)移動(dòng)數據(當工作流完成時(shí))。為了配置此設置,您要將 SQL Server 跟蹤服務(wù)的 PartitionOnCompletion 屬性設置為“true”,以指明各工作流完成時(shí)應被移動(dòng)到相應的跟蹤分區。為了對數據進(jìn)行手動(dòng)分區,您可以調用跟蹤數據庫中的 PartitionCompletedWorkflowInstances 存儲過(guò)程。
查詢(xún)跟蹤數據
當您使用 SQL 跟蹤服務(wù)收集數據時(shí),數據被存儲在 SQL Server 中,這意味著(zhù)您可以使用傳統的報告工具查看數據和進(jìn)行分析。但在某些情形下,您需要查詢(xún)應用程序中的工作流數據。您不必編寫(xiě) SQL 查詢(xún)和確定數據庫中的正確關(guān)系,Windows Workflow Foundation 包含了跟蹤查詢(xún)編程接口,使您能夠為工作流實(shí)例搜索跟蹤信息。該信息作為類(lèi)返回,提供了對所有跟蹤的事件和您的跟蹤配置文件指定的數據的訪(fǎng)問(wèn)。
SqlTrackingQuery 類(lèi)使您既可以使用工作流的實(shí)例 ID 來(lái)嘗試加載特定工作流實(shí)例的跟蹤數據,也可以使用離散參數集來(lái)查詢(xún)工作流列表。當加載特定實(shí)例時(shí),您使用 TryGetWorkflow 方法,該方法返回指明請求是否成功的布爾值。要查詢(xún)多個(gè)工作流,請使用 GetWorkflows 方法,該方法需要一個(gè) SqlTrackingQueryOptions 實(shí)例。
查詢(xún)選項使您能夠定義在跟蹤數據庫中搜索工作流時(shí)要使用的參數。最簡(jiǎn)單的選項包括最小和最大日期值以及工作流類(lèi)型和狀態(tài)。例如,您可以配置選項以搜索所有與您的工作流類(lèi)型匹配的工作流,工作流具有 Completed 狀態(tài),日期位于當前日期和一周前的日期之間。這使您能夠檢索關(guān)于工作流類(lèi)型和生成方式的目標信息。
我已經(jīng)介紹了讓您指明所關(guān)注的失敗條件的跟蹤配置文件。使用圖 4 顯示的代碼,您可以在數據庫中查詢(xún)所有終止工作流的實(shí)例,并輸出異常詳細信息。請注意異常詳細信息被作為跟蹤的終止事件的事件參數包含在跟蹤信息中。
您還可以根據提取的值進(jìn)行搜索。例如,如果您配置了跟蹤配置文件以提取 SendEmail 活動(dòng)的 To 地址,則可以編寫(xiě)查詢(xún)以返回工作流實(shí)例,其中 To 地址與確定的值(如特定的員工或合作伙伴)相匹配。以下代碼是使用 SqlTrackingQueryOptions 中的 TrackingDataItemValue 項根據提取的值優(yōu)化對特定項的搜索的示例:SqlTrackingQueryOptions options = new SqlTrackingQueryOptions();TrackingDataItemValue item = new TrackingDataItemValue("sendEmail1", "To", "highpriority@example.com");options.TrackingDataItems.Add(item);SqlTrackingQuery query = new SqlTrackingQuery(connectionString);IList<SqlTrackingWorkflowInstance> workflows =query.GetWorkflows(options);
 
如果選擇直接查詢(xún) SQL Server 數據庫以進(jìn)行報告或執行其他操作,則應當使用在表中定義的視圖而不直接使用表。通常,這是一個(gè)不錯的做法,當視圖要包含來(lái)自所有已創(chuàng )建的跟蹤分區的數據時(shí),尤為重要。通過(guò)使用視圖,不再需要自己合并所有這些表中的數據。
自定義跟蹤服務(wù)
跟蹤數據直至其進(jìn)入 SQL Server 數據庫是一個(gè)重要用例,而且可能是最常見(jiàn)的用例,它不是使用跟蹤信息的唯一情形。因為它是一項通用要求,Microsoft 決定將這項豐富的服務(wù)包含在 Windows Workflow Foundation 中。然而,這類(lèi)具有廣泛用途的服務(wù)必須盡可能通用。這意味著(zhù)在許多情況下,它可能不適合。在這種情況下,您可以創(chuàng )建自定義跟蹤服務(wù)。
在工作流解決方案中有許多使用自定義跟蹤服務(wù)可滿(mǎn)足的要求。在此,我將討論創(chuàng )建您自己的跟蹤服務(wù)的基本知識,并提供一些符合通用要求的自定義服務(wù)的示例。需要記住的重要一點(diǎn)是跟蹤是您對工作流的監控。一旦理解了借助跟蹤配置文件配置跟蹤服務(wù)的方式,就可以獲得所需的結果,接下來(lái)就是自定義的服務(wù)應如何使用或表示跟蹤的信息。
為了創(chuàng )建自定義跟蹤服務(wù),您需要完成兩件事情。首先,要確定如何為您的服務(wù)創(chuàng )建跟蹤配置文件。某些情況下,在所有工作流類(lèi)型中,配置文件都可能是靜態(tài)的和不變的。在這種情況下,您可以在代碼中創(chuàng )建配置文件,當需要配置文件時(shí),只需將其返回至運行庫即可。然而,如果您需要跟蹤服務(wù)支持多個(gè)配置文件或不同版本的配置文件,則需要一種存儲該信息和從您的跟蹤服務(wù)中檢索該信息的方法。
接下來(lái),您要實(shí)現兩個(gè)提供您的服務(wù)的運行時(shí)行為的類(lèi):跟蹤服務(wù)和跟蹤通道。該跟蹤服務(wù)類(lèi)作為工作流運行時(shí)服務(wù),它是主機應用程序的直接接口和與您的跟蹤服務(wù)交互的運行庫。您要創(chuàng )建該類(lèi)的實(shí)例并使用代碼或配置將其添加到工作流運行庫中,與任何其他服務(wù)一樣。
該跟蹤服務(wù)類(lèi)有以下兩種主要功能:為跟蹤偵聽(tīng)器提供跟蹤配置文件,并提供偵聽(tīng)器可向其寫(xiě)入數據的跟蹤通道。跟蹤通道是您實(shí)現的用于接收和處理跟蹤數據的類(lèi)。它可以在存儲區域(如 SQL Server 或 Windows 事件日志)之外寫(xiě)入該數據;可以為操作引發(fā)事件,如 Windows Management Instrumentation (WMI) 事件;還可以將數據發(fā)送回跟蹤服務(wù)以將其保存在內存中并使其可供主機應用程序使用。當然,還有其他一些選項,您使用數據的方式將取決于您的需求和要求。您的自定義跟蹤服務(wù)將按它們所使用的跟蹤配置文件以及它們處理所接收的數據的方式加以區分。
因為具有以下兩種簡(jiǎn)單方法,所以跟蹤通道是最方便的起點(diǎn):Send 和 InstanceCompletedOrTerminated。您的跟蹤服務(wù)應為各工作流實(shí)例提供跟蹤通道,為各請求提供跟蹤通道的唯一實(shí)例是一種通用做法。通常,您要提供將 TrackingParameters 作為參數的構造函數,在實(shí)現其他方法時(shí)您可能需要此信息。TrackingParameters 類(lèi)有關(guān)于要被跟蹤的工作流實(shí)例(如實(shí)例 ID)、對根活動(dòng)定義的訪(fǎng)問(wèn)的信息,以及關(guān)于父活動(dòng)和工作流調用(如果該工作流不是從其他工作流中調用的)的信息。
InstanceCompletedOrTerminated 方法使您能夠在活動(dòng)完成時(shí)跟蹤服務(wù)以獲得通知,這樣它就能清除與跟蹤工作流相關(guān)的所有資源。通常,這需要按照 TrackingParameters 提供的內容訪(fǎng)問(wèn)工作流實(shí)例 ID,因為 InstanceCompletedOrTerminated 方法不帶任何參數。
可為跟蹤配置文件中所請求的每一跟蹤記錄調用您的跟蹤通道的 Send 方法。與配置文件類(lèi)似,也存在工作流、活動(dòng)和由基類(lèi) TrackingRecord 派生的用戶(hù)跟蹤記錄。在 Send 方法中,您要檢查已提交了哪種類(lèi)型的跟蹤記錄,然后進(jìn)行相應地處理。例如,如果您知道您的跟蹤配置文件沒(méi)有指明所關(guān)注的用戶(hù)跟蹤事件,您就無(wú)需在您的跟蹤通道中處理用戶(hù)跟蹤記錄。
跟蹤服務(wù)類(lèi)本身負責管理跟蹤配置文件。跟蹤服務(wù)基類(lèi)提供了幾種檢索配置文件的方法,使您能夠根據工作流類(lèi)型和工作流實(shí)例管理配置文件。這意味著(zhù)您的服務(wù)可以返回相應的配置文件,范圍從對所有工作流都相同的配置文件到對各工作流實(shí)例是唯一的配置文件。
對于 GetProfile 方法,存在兩種重載。一種重載需要實(shí)例 ID,另一種重載需要類(lèi)型和配置文件版本號。另外,TryGetProfile 也需要類(lèi)型信息。在所有這些情況下,您的自定義跟蹤服務(wù)的工作就是返回與類(lèi)型或實(shí)例相適應的跟蹤配置文件。
此外,還存在一種稱(chēng)為 TryReloadProfile 的方法,如果存在更新的配置文件,該方法將進(jìn)行運行時(shí)調用以獲得該文件。為了確保及時(shí)更新,跟蹤偵聽(tīng)器要定期向您的跟蹤服務(wù)詢(xún)問(wèn)以確定是否使用更新的配置文件。無(wú)需在每次需要時(shí)創(chuàng )建新的配置文件或查找配置文件,您可以在您的自定義跟蹤服務(wù)中實(shí)現 IProfileNotification 接口。IProfileNotifcation 接口包括以下兩種事件:ProfileUpdated 和 ProfileRemoved。當您在您的跟蹤服務(wù)中實(shí)現此接口時(shí),跟蹤偵聽(tīng)器不再進(jìn)行更新輪詢(xún)。取而代之的是,在該接口的事件發(fā)生過(guò)程中它要等待所有更新的通知。
在本專(zhuān)欄的代碼下載中包含了幾個(gè)示例跟蹤服務(wù)。當前狀態(tài)示例使用跟蹤以獲得狀態(tài)機工作流的當前狀態(tài),并使其可供主機應用程序使用。該服務(wù)的跟蹤配置文件包含針對 State 活動(dòng)執行狀態(tài)的活動(dòng)跟蹤點(diǎn)。當收到活動(dòng)跟蹤記錄時(shí),跟蹤通道會(huì )使用當前狀態(tài)名更新跟蹤服務(wù)類(lèi)中的詞典。該示例是一個(gè)服務(wù)示例,對于所有工作流都有相同配置文件,并將數據寫(xiě)回服務(wù)以便由主機應用程序查詢(xún)。
包含在代碼下載中的另一個(gè)示例跟蹤服務(wù)旨在解決 Windows Workflow Foundation 中開(kāi)發(fā)人員常見(jiàn)的一種問(wèn)題??紤]到工作流執行以及與主機應用程序分離方式的性質(zhì),獲得對運行工作流的引用和提取屬性值不是一個(gè)簡(jiǎn)單過(guò)程。這是一個(gè)常見(jiàn)要求,特別是在 ASP.NET 情形中。一旦 ManualWorkflowScheduler 完成在工作流中執行相應步驟,可能需要使用工作流的屬性值更新用戶(hù)接口。
使用 CallExternalMethod 活動(dòng)可傳遞工作流中的信息,但這并不總是一種理想的解決方案,而且在大型項目中被證明是難以承受的。工作流屬性跟蹤服務(wù)示例使用跟蹤來(lái)解決此問(wèn)題。在此跟蹤服務(wù)中,對于每種工作流類(lèi)型,返回的配置文件是不同的,以便反映工作流中的不同屬性。使用反射構建工作流數據跟蹤提取集合,并將它們添加到活動(dòng)跟蹤點(diǎn)。跟蹤的位置位于各活動(dòng)的 Closed 事件中。因此,當各活動(dòng)結束后,來(lái)自工作流實(shí)例的屬性值將被提取,并發(fā)送到跟蹤通道。通道將更新服務(wù)中的詞典,使這些值可供主機應用程序使用。
這是兩個(gè)相當簡(jiǎn)單的自定義跟蹤服務(wù)的示例,但二者均是針對開(kāi)發(fā)人員常見(jiàn)情形,提供了簡(jiǎn)單、可重復使用的實(shí)現,并充分利用了現有跟蹤基礎結構。如果缺乏構建基礎,這些挑戰將會(huì )更大,需要更多的自定義代碼,而解決方案也可能不一致。
正如您所看到的,Windows Workflow Foundation 中的跟蹤服務(wù)非常靈活,有助于應對大量不同的業(yè)務(wù)要求。跟蹤對于工作流的可視性至關(guān)重要,自定義跟蹤服務(wù)是您在應用程序中充分發(fā)揮這種可視性的“利器”。
將您想詢(xún)問(wèn)的問(wèn)題和提出的意見(jiàn)發(fā)送至:mmnet30@microsoft.com mmnet30@microsoft.com.
NEW:Explore the sample code online! - or - 代碼下載位置:Foundations2007_03.exe (178KB)
Matt Milner是一位獨立的軟件顧問(wèn)和 PluralSigh 的教師,專(zhuān)門(mén)從事 關(guān)于 Microsoft 技術(shù)(包括 .NET、Web 服務(wù)、Windows Workflow Foundation、Windows Communication Foundation 和 BizTalk Server)的講授。Matt 與其妻子 Kristen 和兩個(gè)孩子居住在明尼蘇達。您可通過(guò) Matt 在pluralsight.com/blogs/matt 開(kāi)設的博客與他聯(lián)系。
 摘自 March 2007 期刊 MSDN Magazine.
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
SQL Server AlwaysOn架構及原理
WF學(xué)習系列之一:WF基本知識點(diǎn)概述 - 毛毛的小窩 — 關(guān)注技術(shù)交流、讓我們一起成長(cháng) -...
五、性能監視(2)Windows性能日志
配置應用程序塊
SQL Server 2008數據庫實(shí)用教程-第10章
IT行業(yè)公司計算機人員崗位工作職責
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久