六、後台管理與前台展示
到上一章為止,已經講了本系統的各個組成部分,包括資料庫連接及控制項等,所有這些成果馬上就要展示在我們的面前了。
所有的管理功能,均由後台管理程式來實現。後台管理平台本身就是一個可以擴充的平台,客戶拿到手後,可以自己擴充。
後台管理平台是一個frame架構,在左側是菜單,右面是需要顯示的本文,左側菜單封裝了一個控制項,這個控制項首先讀取系統資料表中的菜單內容:ZR_FUNCTION,在這個表中,規定了菜單的ID及名字等,同時因為菜單是一個樹狀結構,所以在此表中,還有一個PARENT_ID欄位用於形成一個樹形結構。在這個表中,同時規定了功能表項目的功能,可以開啟一個aspx頁面,也可以直接展示一個CONTENT_TYPE,可以有不同的調用方法。
在讀取菜單內容的時候,會根據登入使用者的許可權進行過濾,只列出他可以使用的功能菜單,保證不會越權使用。
在功能表項目中,專門列出了對META-DATA的維護,使用者完全可以在這裡對中繼資料進行配置,因為IIS的關係,在配置完成之後,需要重新整理一下cache,在系統管理菜單中有專門這項功能。在登入的時候,系統會自動把一些常用的內容從資料庫裡讀取出來放入記憶體中,所以顯得重新整理重要性。
菜單的控制項也是從其它的專業控制項繼承得來,所以每次與用戶端的資料轉送量比較大,在網路條件不太好的時候,有可能會造成菜單傳輸不完整,從而產生JavaScript錯誤,為此,我在管理程式的介面上加了一個按鈕“重新載入菜單”,在這上面加一個串連,left.aspx,同時把frame設成LEFT,即可以實現對菜單的重新整理。
在管理程式中,有一個亮點,就是MDI表單的效果,這在BS程式中,可以算是挺實用的一個功能,它與GreenBrowser的方式不同,我這種方式,可以共用左側的菜單。MDI控制項也是從一個Tab控制項繼承,並加上大量的JavaScript才實現了這個效果。
在前台展示方面,和後台有所不同,需要使用者自己寫程式實現,當然可以在系統內建的DEMO基礎上去修改得來。
前台的程式開發,主要是調用系統的架構函數,如User類,Content類等,其實和寫一個一般的ASPX程式沒有什麼區別,只是大大的簡化了開發的難度,縮短了開發週期,並減少了出錯的可能性。
因為前台的網站考慮的是開放給福士來使用,與背景管理程式不同,後台主要是給公司的管理員使用,所以在開發策略上也有所不同:背景使用使用者很少,所以可以不太考慮流量的佔用,而前台會員的使用者量可能會相當大,所以在設計上一定要考慮的是,不能佔用過多的頻寬,能用10K表達的頁面,絕對不能使用100K,所以不能放入太多的客戶化控制項,盡量使用標準的HTML寫法,正因為這點,我所設計的很多的控制項只會出現在後台管理程式中,前台不建議調用。
在多語言方面,前台與背景實現方式基本相同,全是使用多語言章節中的方式。
七、總結
HIPPO是本人多年軟體開發經驗的積累,吸收了多個大型系統的優點和特點,但是由於個人精力有限,還有很多很好的想法目前還正在實現之中,當然還有許多很好的功能,因為篇幅關係,在此不再多說了,有興趣可以直接與本人交流。本人的郵件: zrsoftcn@yahoo.com.cn