Bài giảng Giới thiệu về Windows Workflow

18 16 0
Bài giảng Giới thiệu về Windows Workflow

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài giảng Giới thiệu về Windows Workflow cung cấp cho người đọc những kiến thức tổng quan về Windows Workflow (WF). Nội dung chính của bài giảng trình bày về khái niệm workflow (luồng công việc) trong các hoạt động nghiệp vụ. Ngoài ra bài giảng này còn giới thiệu về chi tiết, kiến trúc, công cụ phát triển và một ví dụ cơ bản ban đầu về WF giúp cho người đọc làm quen với WF.

MỤC LỤC Workflow gì? 2 Giới thiệu Windows Workflow Foundation 2.1 Lý nên sử dụng WF 2.2 Kiến trúc Windows Workflow Foundation 2.2.1 Hai loại activity 2.2.2 Lưu trú 2.2.1 Các dịch vụ chạy (runtime service) WF 2.3 Mơ hình xây dựng workflow 11 2.4 Các loại workflow WF 11 2.5 Công cụ phát triển WF 12 So sánh WF với WCF 13 Bắt đầu với WF 13 Ví dụ với WF 14 Câu hỏi ôn tập 17 Tài liệu tham khảo 18 Bài mở đầu GIỚI THIỆU VỀ WINDOWS WORKFLOW FOUNDATION Bài giới thiệu tổng quan Windows Workflow Foundation (WF) Phần đầu bàn khái niệm workflow (luồng công việc) hoạt động nghiệp vụ Từ phức tạp luồng công việc, thấy cần có cơng cụ phát triển phần mềm giúp mơ hình hóa tiến hành lập trình ứng dụng tập trung vào luồng công việc cách thuận tiện đơn giản Windows Workflow Foundation (WF) thành phần phần mềm Phần vào chi tiết giới thiệu WF, kiến trúc WF, công cụ phát triển cuối ví dụ ban đầu WF giúp cho người đọc làm quen với WF Workflow gì? Một workflow (luồng cơng việc) thứ tự bước, tác vụ, kiện tương tác làm nên quy trình để thực cơng việc Quy trình có nhiều phận, cá nhân tham gia Nguồn gốc luồng cơng việc có lẽ bắt nguồn từ cơng tác xử lý văn bản: văn cần phải di chuyển từ nơi sang nơi khác để thực cơng việc khác (đọc, sửa đổi, góp ý, xem lại, phê chuẩn…) Ví dụ, luồng cơng việc thực mua bán hàng hóa đơn giản gồm chuối bước sau: Đầu tiên người mua xem tính sản phẩm giá, cảm thấy thỏa mãn chọn mua sản phẩm đó, điền thơng tin cá nhân vào phí tốn cuối tốn đơn hàng Hình Ví dụ quy trình cơng việc Thực tế cho thấy, hệ thống quản lý thông tin chứa nhiều nghiệp vụ cần thực luồng cơng việc Vì có nhiều sản phẩm workflow tự động cho phép tạo mơ hình luồng cơng việc thành phần form online, người dùng dùng chúng để đảm bảo tính quán cơng việc Chẳng hạn ví dụ trên, luồng công việc đảm bảo người mua hàng phải thực bước chọn sản phầm điền thông tin khách hàng trước thực toán Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation 2 Giới thiệu Windows Workflow Foundation Windows Workflow Foundation (WF) công nghệ Microsoft cho phép định nghĩa, thực thi quản lý workflow Công nghệ đời vào tháng 11 năm 2006 phần tảng NET framework 3.0 (cịn gọi WinFX) WF, khơng cho phép bạn phối hợp công việc chương trình truyền thống, có có vài điểm khác biệt quan trọng sau:  WF điều khiển công việc chạy thời gian dài cách lưu trữ (persisting) workflow vào chỗ lâu bền (trái với nhớ tồn hệ điều hành chạy) đĩa cứng, sở liệu workflow khơng làm nạp trở lại workflow tiếp tục làm việc  Thể workflow chỉnh sửa động chạy (thêm điều kiện mới, cách xử lý khác với tạo ra)  WF mộ phương pháp lập trình khai báo (trái với lập trình viết mã lệnh) cách kết nối thành phần định nghĩa sẵn (gọi “hành động” - activity)  WF cho phép bạn khai báo luật nghiệp vụ, chúng tách rời mã bạn dễ dàng sửa đổi chúng sau  WF hỗ trợ kiểu hệ thống khác với hai loại workflow: workflow trình tự (sequential) workflow máy trạng thái 2.1 Lý nên sử dụng WF Tại lại dùng luồng công việc (workflow): Lý lớn luồng cơng việc cho phép bạn mơ hình hóa cách trực quan rõ ràng luồng điều khiển ứng dụng Thay biểu diễn logic ứng dụng bạn mớ mã phức tạp, khai báo logic luồng công việc rõ ràng làm đơn giản Nhờ đó, bạn kiểm tra logic ứng dụng bạn, làm trực quan hóa nó, theo vết thực thi kể thay đổi chạy Điều rõ ràng tuyệt vời Ngoài workflow cho phép phối hợp làm việc người phần mềm loại giao diện tương tác khác nhau: email, web-form, winform, instant message Tại nên dùng WF: WF tảng cho phép nhà phát triển xây dựng ứng dụng có luồng công việc trở nên đơn giản Thực tế, có nhiều nhà phát triển phát triển framework riêng họ, điều cho thấy cần thiết phải có framework đủ tốt hỗ trợ cho ứng dụng luồng công việc Sự đời WF giải nhu cầu Một workflow WF cấu thành từ activity Theo quan điểm người lập trình workflow hay activity đối tượng hình thành từ lớp, định nghĩa workflow hay activity tùy ý Cũng giống winform webform có điều khiển chuẩn Microsoft cung cấp activity gọi BAL (Base Activity Library), hầu hết workflow xây dựng từ activity Nhà phát triển thiết kế workflow trực quan qua công cụ thiết kế Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation workflow đồ họa (Workflow Designer) Visual Studio Rất nhiều người thích tính trực quan dễ dàng nắm bắt giao diện đồ họa có người thích dịng mã hơn, WF cho phép họ làm phối hợp hai cách Như WF cho hiệu phát triển workflow mức cao nhất, thuận tiện với tất người Workflow WF hỗ trợ phát triển nhanh chóng dễ dàng phí phát triển giảm đáng kể mà chất lượng đảm bảo 2.2 Kiến trúc Windows Workflow Foundation Như giới thiệu trên, WF thành phần nằm tảng NET 3.0 Bên cạnh WF, NET 3.0 cịn có số mơ hình lập trình WCF, WPF, CardSpace Hình Vị trí WF NET 3.0 Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation Hình Kiến trúc WF WF mơ hình lập trình, trang bị chế công cụ để xây dựng ứng dụng thiên luồng công việc Như hình… workflow WF cấu thành từ activity, activity thường tạo từ BAL - thư viện activity WF activity tùy biến người dùng Một workflow chạy Runtime Engine, Runtime Engine bao gồm dịch vụ chạy (Runtime Service) Đến lượt Runtime Engine lại lưu trú tiến trình ứng dụng chủ (host process), ứng dụng chủ loại ứng dụng NET chạy phía client hay server: winform, winservice, webform, web service Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation 2.2.1 Hai loại activity Hình  Các activity Thư viện activity – BAL: Frameworkf WF đóng gói 30 activity BAL BAL chứa activity từ điều khiển hành động phức tạp gọi web service Hình hiển thị tất activity BAL Toolbox Visual Studio  Activity tùy biến: Bạn dễ dàng tạo activity đáp ứng nghiệp vụ bạn Activity tùy biến thực chức đó, từ đơn giản chẳng hạn câu lệnh SQL Insert liệu đến phức tạp tạo đơn đặt hàng 2.2.2 Lưu trú Vì WF ứng dụng độc lập, nên cần phải cho lưu trú lên ứng dụng NET khác Ứng dụng chủ loại ứng dụng NET chẳng hạn winform, ASP.NET, console, Windows Service web service Mặc dù workflow nơi hầu hết nghiệp vụ quan trọng thực thi, ứng dụng chủ quan trọng nơi diễn vịng đời thi hành workflow Ứng dụng chủ nơi workflow khởi hành thường nơi người dùng tương tác Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation Mơ hình có ứng dụng chủ phù hợp cho phép WF tập trung vào xử lý nghiệp vụ, tương tác giao phó cho loại ứng dụng khác NET Việc tương tác WF với ứng dụng chủ sao? Tất nhiên WF thực thi mình, cần có tương tác với mơi trường bên ngồi ứng dụng chủ WF cung cấp chế cho phép bạn dễ dàng nhanh chóng truyền liệu vào workflow, ngồi phương thức điều khiển kiện để tương tác với bên Để dùng tham số giao tiếp workflow ứng dụng chủ, đoạn mã tạo workflow phương thức CreateWorkflow lớp WorkflowRuntime, bạn truyền đối tượng Dictionary chứa thành phần tham số cần thiết cho workflow Dạng giao tiếp khác workflow dịch vụ giao tiếp nội (local communication services), dạng giao tiếp thực lớp thông qua kiện phương thức Ứng dụng chủ “nói chuyện” với workflow cách kích hoạt kiện mà xử lý bên workflow Workflow giao tiếp với ứng dụng chủ cách gọi phương thức Đây dạng thông dụng giao tiếp dùng khái niệm quen thuộc nhà phát triển Dùng dịch vụ giao tiếp nội đơn giản Đầu tiên bạn cần phát triển NET Interface định nghĩa kiện phương thức dùng để giao tiếp, ví dụ [ExternalDataExchangeAttribute] public interface ITalkWithMe { void TellSomethingToTheHost(string message); event EventHandler NotifyTheWorkflow; } Sau tạo lớp triển khai interface sau: public class TalkWithMeService : ITalkWithMe { public void TellSomethingToTheHost(string message) { System.Windows.Forms.MessageBox("The workflow told me: " + message); } public event EventHandler NotifyTheWorkflow; public void SendAnEventToTheWorkflow() { Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation NotifyTheWorkflow(this, new ExternalDataEventArgs(WorkflowEnvironment.WorkflowInstanceId)); } } Chú ý interface ITalkWithMe có attribute ExternalDataExchange, giúp cho WF biết interface dịch vụ giao tiếp nội Tại lớp triển khai interface này, phương thức TellSomethingToTheHost gọi từ thể workflow cho phép truyền message tới dịch vụ Phương thức SendAnEventToTheWorkflow dùng để ứng ụng chủ sinh kiện NotifyTheWorkflow 2.2.1 Các dịch vụ chạy (runtime service) WF Hình Dịch vụ chạy WF Các dịch vụ chạy WF chứa lớp chuẩn lớp người dùng tùy biến cần thiết cho engine workflow runtime trình thi hành (hình 5) Các dịch vụ thực tác vụ liên quan đến thực thi bảo trì workflow Sau số dịch vụ: Tên dịch vụ Mô tả Các lớp liên quan Là dịch vụ giúp bạn bảo đảm tính toàn vẹn ứng Transaction (giao tác): dụng workflow Transaction định nghĩa DefaultWorkflowTransactionService nhóm activity phải thực thi thành cơng tồn (mặc định) Nếu activity chuỗi mà bị lỗi, hành động thực phải quay lui Tuy nhiên SharedConnectionWorkflow transaction mà thực thi thời gian dài -TransactionService lúc quay lui, thay vào số Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation logic triển khai để đảm bảo trạng thái ổn định workflow Kiến trúc dịch vụ transaction WF hỗ trợ hai loại transaction transaction ACID (Atomic – nguyên tử, Consistency – quán, Isolate – phân tách Durable – lâu bền) transaction chạy lâu dài (long-running) Transaction chạy lâu dài khác với ACID chỗ khơng có tính Isolate, có activity định khơng thể quay lui Ví dụ transaction có giao tiếp với khách hàn, hành động gửi email tới khách hàng thực thi, sau có activity bị lỗi khơng thể lấy lại email gửi, lúc cách tốt để đảm bảo transaction thực thi tốt đợi khách hàng gửi lại email báo họ lỗi Lịch vụ cho phép bạn theo dõi ghi lại thực thi workflow Dịch vụ tracking dùng khái niệm tracking profiles tracking channels để xác định Tracking activity cần theo dõi loại phương tiện lưu trữ (theo dõi): Lớp trừu tượng TrackingService dùng để quản lý SqlTrackingService profile channel cho workflow runtime Thông thường, người ta hay lưu thơng tin vào SQL Server Một nguyên tắc workflow cần phải lưu trạng thái chạy thời gian dài Nguyên tắc quan trọng workflow phải tương tác với tác nhân người dùng ứng dụng khác, nghiệp vụ thực khoảng thời gian dài có lúc khơng làm tác nhân thực lại Persistence quay làm việc khác tiếp tục quay trở lại với workflow Những lúc workflow khơng làm SqlWorkflowPersistenceService khoảng thời gian dài mà tồn nhớ làm tốn tài nguyên máy tính, WF hỗ trợ chế cho phép tháo workflow khỏi nhớ lưu phương tiện lưu trữ lâu dài chẳng hạn sở liệu Cơ chế gọi persistence, trình bày kỹ Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation Cho phép bạn định nghĩa cách workflow thi hành mối quan hệ với thread Mặc định WF chạy workflow theo schế không đồng bộn, thức workflow khởi động từ ứng dụng chủ, chạy thread riêng biệt trả điều khiển cho ứng dụng chủ Điều tốt cho Scheduling ứng dụng winform làm cho giao diện không DefaultWorkflowScheduler Service, bị “đơ” Tuy nhiên với ứng dụng web form hay ManualWorkflow SchedulerService web service chạy server, tốt khóa thread ứng dụng chủ lại đợi cho workflow trả điều khiển không ứng dụng chủ mà hồi đáp cho client khơng có giá trị hết Tất việc điều khiển chế thread thực dịch vụ scheduling Workflow Cho phép tạo thể workflow gọi phương Loader thức CreateWorkflow Data Exchange DefaultWorkflow LoaderService Quản lý dịch vụ truyền thông tùy biến Tuy dịch vụ cung cấp sẵn có chứa nhiều dịch vụ ln nảy sinh nhu cầu dùng dịch Dịch vụ tùy biến (của người dùng) vụ đặc trưng, chẳng hạn lập trình viên yêu cầu workflow theo dõi liệu gửi qua web Thừa kế từ lớp service có bị lỗi hay không WF cho phép người dùng WorkflowRuntimeService định nghĩa dịch vụ riêng họ sử dụng dịch vụ chuẩn cung cấp sẵn frame work Để dùng dịch vụ, bạn cần khai báo “Add” vào thể workflow runtime trước chạy workflow Đoạn mã sau cho ta ví dụ dùng dịch vụ Tracking: private void RunWorkflow() { WorkflowRuntime wr = new WorkflowRuntime(); string connectionstring = "Initial Catalog=Tracking;Data Source=localhost; Integrated Security=SSPI;"; //Out of the Box Tracking Service Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation 10 wr.AddService(new SqlTrackingService(connectionstring)); wr.CreateWorkflow(typeof(SimpleWorkflow)).Start(); } 2.3 Mơ hình xây dựng workflow Để xây dựng workflow WF, người ta tạo “khai báo” workflow ngôn ngữ dựa XML gọi XAML, dùng mã lập trình C# VB, kết hợp hai cách Sau xây dựng workflow cần biên dịch chúng thành NET assembly để thực thi mơi trường NET runtime Q trình biên dịch gồm hai công đoạn:  Dịch từ mã khai báo mã lập trình thành đoạn mã C#/VB túy công cụ Workflow Compiler (file wfc.exe)  Dịch từ mã C#/VB sang NET assembly giống ứng dụng NET truyền thống Hình Mơ hình xây dựng workflow WF 2.4 Các loại workflow WF Windows Workflow Foundation cung cấp hai loại workflow: trình tự (sequential) máy trạng thái (state-machine) Mỗi loại có đặc điểm tập activity riêng  Workflow trình tự loại thơng dụng ví dụ mà người ta hay nghĩ nói đến workflow Loại workflow mơ tả tiến trình có điểm khởi đầu, sau thực thi số activity theo thứ tự định sẵn cuối đến điểm kết thúc Trong workflow trình tự bạn dùng logic điều khiển tương tự ứng dụng truyền thống: if-then, vòng lặp while, điểm khác biệt logic điều khiển thể trực quan khai báo không cần lập trình Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation 11  Workflow máy trạng thái khác với workflow trình tự chỗ chuyển đổi linh hoạt trạng thái thi hành theo thứ tự định trước Việc chuyển đổi gây kiện Workflow loại bắt đầu trạng thái khởi đầu, sau hoạt động di chuyển trạng thái đạt đến trạng thái kết thúc Workflow máy trạng thái trình bày cụ thể riêng bảy 2.5 Cơng cụ phát triển WF Hiện tại, WF tích hợp thành phần (component) phần mềm nằm Microsoft.NET 3.0 Người dùng phát triển ứng dụng WF Visual studio 2008 Visual studio 2005 có tích hợp Visutal Studio 2005 Extensions for Windows workflow Foundation Trong Visual Studio tạo dự án loại Workflow ngơn ngữ lập trình C# VB Trong dự án workflow thiết kế workflow trực quan cơng cụ Workflow Designer (hình 7): có sổ Toolbox chứa Activity tương tự Toolbox chứa điều khiển làm việc dự án Winform hay Webform Chúng ta kéo thả, thiết lập thuộc tính, mối liên hệ activity bằgn công cụ Các công cụ kèm với WF: - Wca.exe: Cơng cụ dịng lệnh để sinh file mã cho Activity HandleExternalEventActivity Activity CallExternalMethodActivity chứa nhiều giao diện ExternalDataExchangeService Với phương thức kiện interface, Activity tao với thuộc tính tương ứng với đối số phưong thức/sự kiện - Wfc.exe: trình biên dịch dạng dòng lệnh đuợc dùng để dịch luồng cơng việc activity Nó dùng đầu vào file đánh dấu workflow (.xoml) file nguồn C# Visual Basic, kiểm chứng luồng công việc activity sau sinh assembly file khả thi Để biết tùy chọn công cụ chạy wfc.exe với đối số /? Trình biên dịch luồng cơng việc thực thi qua tiến trình gồm hai bước Bước đầu tiên, trình dịch sinh assembly tạm với tùy chọn /debug sùng assembly để kiểm tra kiểu Trong bước thứ 2, trình dịch tạo assembly đầu thực Assembly dạng debug retail, tùy thuộc vào tùy chọn được dùng, mặc định debug (/debug) Nếu muốn tạo dịch retail, dùng tùy chọn /debug- Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation 12 Hình Workflow designer So sánh WF với WCF Về phương diện truyền thông, WF cung cấp cho vài công cụ để làm việc qua web service với XML Dùng WF xuất workflow web service, người dùng web service dễ dàng Phải tính giống với WCF WCF công nghệ tảng nhằm thống nhiều mơ hình lập trình giao tiếp hỗ trợ NET 3.0 thành mơ hình Đúng WCF cung cấp cho cơng cụ để cài đặt sử dụng web service, WCF mạnh mẽ so với WF nhiều Mục đích WCF thống tất mơ hình lập trình cho tất tiến trình giao truyền thơng, cho phép xây dựng kết nối dựa kiến trúc hướng dịch vụ (SOAs) Với SOAs, phần mềm chuyển từ gọi phương thức sang việc dùng dịch vụ Trong hệ thống phần mềm lớn tiến trình gọi dịch vụ phức tạp tốn Tóm lại, WF mạnh mặt hỗ trợ thiết lập luồng công việc không mạnh mặt truyền thông giao tiếp hướng dịch vụ WCF Bắt đầu với WF Nếu bạn sử dụng Visual Studio 2008 bạn khơng cần thiết lập hay cài đặt để làm việc với WF Cịn sử dụng Visual Studio 2005, bạn làm theo bước: Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation 13 Download file địa sau: o NET Framework 3.0 runtime components (file: dotnetfx3setup.exe): http://www.microsoft.com/downloads/details.aspx?familyid=10CC340B-F857-4A14-83F5-25634C3BF043&displaylang=en Nếu bạn sử dụng Windows Vista máy có sẵn NET Framework 3.0, không cần file o Visual Studio extensions for workflow (file: Visual Studio 2005 Extensions forWindows Workflow Foundation (EN).exe): http://www.microsoft.com/downloads/details.aspx?familyid=5D61409E-1FA3-48CF-8023E8F38E709BA6&displaylang=en Cài đặt gói phần mềm theo thứ tự sau: o Cài đặt NET frame work 3.0: Click đúp vào dotnetfx3setup.exe file to để bắt đầu trình cài đặt Theo bước wizard có NET 3.0 máy o Chạy file Visual Studio 2005 Extensions for Windows Workflow Foundation (EN).exe để cài đặt thành phần Windows Worflow Foundation Ví dụ với WF Cũng giống việc làm quen với ngơn ngữ lập trình hay frame work khác, làm quen với workflow thông qua ví dụ đơn giản nhất“Hello World” Trong ví dụ này, chương trình chủ nhận tên người dùng truyền cho workflow, workflow in lời chào Ví dụ không nhằm để minh họa tất khả tảng WF cho trải nghiệm cảm nhận ban đầu xây dựng workflow với WF  Đầu tiên, khởi động Visual Studio 2008, tạo dự án có project type Visual C# Workflow, template kiểu Sequential Workflow Console Application, đặt tên project HelloWorld Hình Tạo project HelloWorld Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation 14  Quan sát project vừa tạo Visual Studio, thấy có hai file quan trọng: file chương trình chủ programs.cs file định nghĩa workflow Workflow1.cs Như vậy, Visual Studio tạo giúp cho workflow tên Workflow1, cơng việc thiết kế Hãy click chuột vào file Workflow1.cs để chuyến sang hình thiết kế workflow Workflow cấu tạo từ activity, ví dụ làm cơng viẹc đơn giản in lời chào cần dùng activity Code đủ Kéo activity tên Code ToolBox vào điểm khởi đầu (mũi tên xanh) điểm kết thúc (vuông màu đỏ) Đặt lại tên cho activity sayHello (hình 9) Hình  Thiết kế giao diện workflow HelloWorld Quan sát hình thiết kế workflow thấy activity sayHello có dấu cảnh báo màu đỏ góc bên trái, trình thiết kế muốn nhắc activity chưa hoàn thiệt, cần bổ sung giá trị cho thuộc tính Hãy click đúp chuột vào activity sayHello để thiết lập thuộc tính ExecuteCode sinh phương thức gọi workflow thực thi đến activity sayHello Kết trình visual Studio sinh cho khung phương thức tên sayHello_ExecuteCode Phương thức có nhiệm vụ in lời chào Hãy viết lại phương thức sau: private void sayHello_ExecuteCode(object sender, EventArgs e) { System.Console.WriteLine("Hello " + _FullName); }  Ta thấy phương thức dùng thuộc tính _FullName, ta cần thêm thuộc tính cho workflow Thuộc tính chương trình chủ truyền giá trị (tên người nhập vào) vào workflow Đoạn mã định nghĩa thuộc tính sau: private string _FullName; public string FullName { set { _FullName = value; } } Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation 15  Tiếp theo cần sửa mã ứng dụng chủ (file Program.cs) để cho phép người dùng nhập tên vào truyền tên tham số đầu vào (tới thuộc tính FullName) Workflow1 Sửa hàm Main sau: static void Main(string[] args) { using(WorkflowRuntime workflowRuntime = new WorkflowRuntime()) { System.Console.Write("Please input your name:"); String inputName = System.Console.ReadLine(); // create a dictionary for input parameters Dictionary inParms = new Dictionary(); // add a first name to the parms list inParms.Add("Name", inputName); WorkflowInstance instance = workflowRuntime.CreateWorkflow(typeof(HelloWorld.Workflow1), inParms); instance.Start(); AutoResetEvent waitHandle = new AutoResetEvent(false); waitHandle.WaitOne(5000); } }  Như hoàn thành project workflow đầu tiên, biên dịch chạy (ấn F5 Visual Studio) để kiểm nghiệm kết Kết chạy tương tự hình 10: Hình 10 Kết chạy workflow HelloWorld Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation 16 Câu hỏi ôn tập WF gì? WF, viết tắt Windows Workflow Foundation phần NET 3.0 framework Một tính thú vị WF giúp tách rời tiến trình nghiệp vụ mã thực thi nghiệp vụ Trước có WF, nhà phát triển thường trộn lẫn mã logic nghiệp vụ mã thực thi với ngôn ngữ NET C# hay Visual Basic.NET Với việc đời WF, việc điều khiển logic nghiệp vụ định nghĩa luồng công việc nhà phát triển phần mềm cài đặt đoạn mã thực thi nghiệp vụ C#, Visual Basic.NET hay ngôn ngữ NET Vì nói luồng cơng việc cần làm cịn làm việc mã lập trình truyền thống Dịch vụ chạy (Runtime Service) WF gì? Khi thi hành workflow WF, activity tượng thực tác vụ có ln có yêu cầu cần phải cung cấp Kiến trúc WF thiết kế cho phép cung cấp tính cho workflow runtime dạng dịch vụ, chế mềm dèo có khả mở rộng.Bên cạnh dịch vụ thư viện chuẩn WF, người dùng định nghĩa dịch vụ riêng thêm vào workflow runtime WF (Windows Presentation Foundation) – công nghệ Micrcosoft giới thiệu lần đầu trong: A .NET Framework 1.1 B .NET Framework 2.0 C .NET Framework 3.0 D .NET Framework 3.5 Câu trả lời C Một workflow dịch, chạy bên loại ứng dụng sau A Ứng dụng lệnh B Ứng dụng Winform C Windows Services D Web services E Tất Câu trả lời E Phát biểu sau sai WF: Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation 17 A Extensible Application Markup Language - XAML dùng để định nghĩa workflow B Sequential Workflow State Machine Workflow hai loại workflow C Workflow chứa SQL server cach dụng Persistence Provider cung cấp sẵn D Workflow Runtime chạy ứng dụng Windows Câu trả lời D Tài liệu tham khảo K Scott Allen, Programming Windows Workflow Foundation, Packt Publishing Ltd December 2006 ISBN 1-904811-21-3 Kenn Scribner, Microsoft Windows Workflow Foundation step by step, Microsoft press 2007 Microsoft, Windows Workflow Foundation, URL: http://msdn2.microsoft.com/enus/netframework/aa663328.aspx Microsoft, Windows Workflow Foundation Overview, URL: http://msdn.microsoft.com/en- us/library/ms734631.aspx Microsoft, MSDN (Windows Workflow Foundation (WF)), URL: http://msdn.microsoft.com/enus/netframework/aa663328.aspx Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation 18 .. .Bài mở đầu GIỚI THIỆU VỀ WINDOWS WORKFLOW FOUNDATION Bài giới thiệu tổng quan Windows Workflow Foundation (WF) Phần đầu bàn khái niệm workflow (luồng công việc) hoạt... WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation 2 Giới thiệu Windows Workflow Foundation Windows Workflow Foundation (WF) công nghệ Microsoft cho phép định nghĩa, thực thi quản lý workflow. .. NotifyTheWorkflow; public void SendAnEventToTheWorkflow() { Microsoft Vietnam – DPE Team | WF – Bài mở đầu: Giới thiệu Windows Workflow Foundation NotifyTheWorkflow(this, new ExternalDataEventArgs(WorkflowEnvironment.WorkflowInstanceId));

Ngày đăng: 20/05/2021, 04:59

Tài liệu cùng người dùng

Tài liệu liên quan