程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> 使用silverlight構建一個工作流設計器(三)

使用silverlight構建一個工作流設計器(三)

編輯:關於ASP.NET

本文配套源碼

最新版本在線演示:http://219.153.66.61/wf

新功能調查:系統到這裡已經具備一個設計器的雛形了,當然還有很多需要完善的功能,如果您在這方面有經驗,請提出您的寶貴意見,也可以留下您想要實現的功能,在後續版本中,我們將考慮您的意見,非常感謝:)

本文繼續前文的內容,主要講述與導入xm,導出xm,xml存儲有關的一些內容。包含以下部分:

設計一個流程圖的xml描述文件

將流程圖導出為xm

根據xml文件呈現流程圖

在完成以上內容後,進一步深入思考,既然可以將流程的當前狀態保存為xm,那麼在每次流程改變的時候將當前狀態保存到內存中,在需要的時候再從內存中還原,就可以實現word裡面的 撤銷 與 前進 的功能了,所以功能就加多了兩個。

撤銷

前進

在進一步,如果將內存保存的xml對象集合按照一定的頻率自動播放,是不是就是一個動畫了,呵呵,我們可以用這個來做一個簡單的動畫片了。

四、xml存取

4.1 xml內容

就是將流程圖保存為xml文件,以及根據xml文件還原流程圖的功能。首先來看一下xml文件的格式。Xml文件用來描述流程的,在本文中,流程的布局信息主要有幾個方面:

流程的屬性信息。例如流程名稱等

活動和規則的屬性信息,例如活動名稱等

活動和規則的位置信息

活動和規則的關聯信息

我們設計出一個可以完全描述上面內容的xml文件即可,下面給出這個xml描述的一個實現。

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>

<WorkFlow ID="" Name="" Description="">

<Activitys>

<Activity ActivityID="" ActivityName="" PositionX="" PositionY="" ZIndex="">

</Activity>

</Activitys>

<Rules>

<Rule RuleID="" RuleName="" BeginActivityID="" EndActivityID="" BeginPointX="" BeginPointY="" EndPointX="" EndPointY="" ZIndex="">

</Rule>

</Rules>

</WorkFlow>

上面的內容不用多講了,大家看名字應該可以猜的出來。

我們還可以使用xsd.exe工具(.netframework sdk裡面帶有)生成對應的workflow.xsd文件,在根據.xsd文件生成Class,這個class就是操作這個xml文件的,.net真是太方便了。(這裡就先不這麼做了,而直接使用LINQ To Xml來操作上面的xml文件)

如果您不了解xml相關的一些技術,可以參考

http://www.w3schools.com/xm/default.asp或者http://www.w3schoo.com.cn/(中文版)

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved