這篇文章將為大家詳細講解有關Winform開發框架中的通用附件管理模塊是什么,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
網站設計制作、成都網站設計服務團隊是一支充滿著熱情的團隊,執著、敏銳、追求更好,是創新互聯的標準與要求,同時竭誠為客戶提供服務是我們的理念。創新互聯公司把每個網站當做一個產品來開發,精雕細琢,追求一名工匠心中的細致,我們更用心!
在做Winform項目的時候,一直有一個夢想,就是希望把所有的組件模塊組合即可組裝成一個完整的項目系統(或者至少可以大部分完成)。這即使是夢想,我也一直為之奮斗,每前進一步,我們離夢想就靠近一步。因此,本著這個夢想,我一路走來,開發整理了一系列的組件模塊,包括底層的公用類庫、Winform分頁控件、通用的適應多數據庫的查詢組件,以及相對高層次一點的組件模塊:通用權限管理系統、通用字典管理模塊、通用程序自動更新模塊、通用附件管理模塊,當然還會有更多的組件模塊會吸引我繼續朝著夢想前進。除了這些,為了提高開發效率,從設計好的數據庫,直接生成項目代碼,從05年開始至今,一直完善我的代碼自動生成工具 Database2Sharp。下面的附圖,是我對于目前Winform開發框架以及將來的發展規劃,朝著夢想前進,用博客園記錄我的前進軌跡以及感想。
本片隨筆,還是落地生根,繼續介紹我的Winform開發框架中的一環,通用附件管理模塊。該模塊其實是很通用的一個模塊,例如我們的一些日常記錄,可能會伴隨著有圖片、文檔等的附件管理,如果為每個業務對象都做一個附件管理,或者每次開發系統都重新做,那么效率肯定沒有直接采用通用的附件管理那么方便快捷了。而且在日益增多的項目管理中,我們不需要維護一大堆相同或者類似的代碼,而且我的組件都是內置支持多數據庫的,對不同的數據庫,只需要適當配置即可正常使用,對于組件化的基礎性平臺以及支持多數據庫等方面,特別是項目管理等方面,頗具爭議及傳奇色彩的園友,吉日嘎拉在文章《分享從帶頭拼死拼活開發軟件項目到不去現場異地坐鎮遠程遙控照樣可以把上海的軟件項目管理好》就有很好的闡述,其實他這些總結很實在,有著很好的基礎基類(自己構建的或者購買的)總比從頭來過的強,術業有專攻,更是厚積薄發積累的體現。
1、多數據庫支持模塊
我的一貫做法,就是所有的模塊,為了應付未知的項目需求,都做成多數據庫支持的,雖然看似麻煩了一點,但是由于我提煉的框架,數據庫訪問類都高度抽象化及完好的封裝,因此即使增加多種數據庫的支持,其實需要調整的地方極少。
對于上面幾種數據庫的支持,一般來說,需要增加不同數據庫類型的BaseDAL,由于每個不同數據庫都需要擁有一個BaseDAL,那么很多相同的操作代碼就會發生冗余,因為大多數數據庫的基礎操作是一樣的,只有一部分比較特別,需要進行個性化處理,因此對數據訪問層進行優化設計,得到下面的設計圖,如下所示。
經過框架抽象,這個BaseDAL類代碼很少,基本上通用的數據庫操作,已經放到了AbStractBaseDAL超級基類進行封裝,即使對于一些不同數據庫操作不同,我們也盡可能抽象放到上面基類了,BaseDAL只需要實現一些特殊的操作即可。
2、模塊控件化,***化降低開發工作
為了減少重復開發,要求控件盡可能考慮實際的需求情景。一般來說,我們在數據編輯界面,會有兩個需求,一個是管理與數據記錄對應的附件列表,一個是維護自己的附件信息,下面對這兩個需求進行描述和講解。
1)管理與數據記錄對應的附件列表
首先我們創建一個獨立的控件,用于放到編輯數據記錄窗口里面,如下所示。
這樣在項目中集成(如數據編輯窗口),直接拖動這個控件到界面中,運行就可以看到下面的效果了。
由于一般創建記錄的時候,給他指定一個GUID的附件組ID,這樣我們在數據記錄保存前,我們就可以上傳附件了,如下所示。
而且在這個過程中,可以隨時查看自己在該記錄中已經上傳的附件。
如果附件不夠,可以隨時啟動上傳操作,附件支持多選文件,然后一次性,啟動后臺線程操作方式,把文件上傳及附件記錄保存到數據庫,界面如下所示。
2)維護自己的附件信息
有時候,我們需要管理自己的個人附件,還需要知道自己在業務模塊中上傳過哪些附件,這兩個是比較常見的場景,這樣我們開發一個界面來管理查看這兩類附件,就可以滿足大多數的要求了,如下所示。
因為個人附件或者業務附件都可能比較多,甚至隨著業務的增長,數量可能激增,那么分頁就很有必要,如上圖下發就是利用我的分頁控件模塊(純分頁控件模塊,不含列表),這個分頁控件集合是我博客介紹得比較多的一個控件來的,而且這個是其中之一的純分頁控件,可以適用于所有分頁的場景,而不僅僅是用來顯示二維表這么簡單。當然,這個純分頁控件的使用也是簡單易用的,可以用在各種需要分頁顯示的場合中,這個ListView就是其中之一,還可以用在圖片展示等更多場景。
3、集成圖片查看控件
由于是附件管理,因此有可能上傳各種文件,包括Word文檔、Excel文檔、壓縮文件,以及各種類型的圖片,因此為了方便對圖片的查看,這個控件集成了圖片查看控件,可以非常方便直接讀取圖片附件的數據流作為對象展示,該圖片控件支持對圖片的滾動放大縮小、左右翻轉、選擇放大、圖片移動、保存圖片等功能,不需要查看,直接使用ESC退出即可。
當然對于其他不是圖片的格式附件,由于不知道或者很難直接查看,因此提示用戶保存到本地然后提示打開查看即可,如下所示。
4、集成到WCF開發框架中
為了最可能、***程度的體現系統界面的一致性和應用完備性,我也開發了適用于WCF開發框架的附件上傳模塊,這樣就可以在更多的開發場合上使用,而且由于附件管理模塊的集中化,更加方便維護代碼了。
其實WCF開發框架模式下的附件管理更有意義,因為如果是純粹的本地文件管理,可能體現不出網絡化的附件管理優勢,這樣通過WCF的架構,所有的附件數據都可以在各個不同的地方、各個不同的網絡環境下進行訪問,分布式的優勢更加明顯,這也是WCF開發框架的相同優勢。
以上就是我對附件管理模塊的封裝,希望朝著WInform業務模塊組件化、最終產品高度定制化的理想前進,以最快的速度搭建好最終產品,以高穩定性和統一性的組件界面或者客戶的信賴和贊許。
進一步來說,我的模塊化的Winform開發框架,對開發業務系統的企業來說,甚至只需要個別人掌握組件代碼的維護和更新,讓更多的開發人員投入到實際的業務開發或者控件使用的陣營中去即可,既可有效保護產品的安全性和統一性,也可以更高效率的開發一個新系統,而不需要企業什么基礎性模塊都需要開發人員參與,重新弄出一堆很難統一化的基礎性產品來。回應開頭的一句話,就是術業有專攻,更是厚積薄發的積累的體現。
關于Winform開發框架中的通用附件管理模塊是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
分享標題:Winform開發框架中的通用附件管理模塊是什么
文章轉載:http://m.newbst.com/article34/gdocpe.html
成都網站建設公司_創新互聯,為您提供自適應網站、關鍵詞優化、網站收錄、動態網站、標簽優化、外貿建站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯