天天看點

基于MVC4+EasyUI的Web開發架構形成之旅--總體介紹

最近花了很多時間在重構和進一步提煉Winform開發架構的工作上,加上時不時有一些項目的開發工作,我部落格裡面介紹Web開發架構的文章比較少,其實以前在機關工作,80%的時間是做Web開發的,很早就形成了自己的一套Web開發架構,但是由于一些個人原因,一直沒有來得及好好整理和推廣,其實那套Web開發架構對大多數企業資訊化還是很有幫助的,包括了整體性的架構布局、樣式,以及權限控制、菜單管理、字典管理、工作流審批管理等常見子產品,不過總體覺得技術上是采用asp.net的Webform技術,是以現在MVC大行其道,一直想把它徹底改造過來,本文是介紹基于MVC4+EasyUI的最新版Web開發架構的一系列形成過程,期間包括一些MVC4技術,EasyUI技術,JQuery技術,以及一些我對整體架構改造的基礎性東西,力求更加穩定、通用、高效、簡潔,最少的代碼做最多的事情。

在原先的Web架構裡面,主要是采用FrameSet的原始方式進行布局,很多内容依靠Javascript類庫進行操作,小部分采用了EasyUI的一些特性,總體來說,是比較傳統的一種架構模式,這個架構裡面我已經內建了使用者角色等權限方面的管理和控制、菜單管理、字典管理、業務流程審批管理等子產品,是以對開發正常的行業應用有着比較快的開發效率,不過缺點也比較明顯,就是在多浏覽器支援方面,沒有做的很好,架構裡面采用的布局、樣式及技術等方面不夠統一,不夠新穎,但即使這樣,這套架構也順利用來開發了幾套很大規模的行業應用了,項目的大概布局和樣式,如下是以。

基于MVC4+EasyUI的Web開發架構形成之旅--總體介紹
基于MVC4+EasyUI的Web開發架構形成之旅--總體介紹

這種架構的布局其實已經是利用了比較潮的EasyUI界面布局,得到一些老客戶的支援和鼓勵,不過我覺得如果把架構全部調整為這種HTML+AJax+ASHX處理方式,我覺得還是挺麻煩的,而且逐漸MVC這一技術已經越來越成熟和應用更廣泛了,是以整體性使用MVC來處理,可能能夠帶來更好的效率和減少複雜性。

不過我覺得使用EasyUI來實作這樣的布局,以及子產品的分頁面展示(類似Winform的多文檔管理,且可以右鍵菜單進行多種關閉頁面)的方式,對一些企業應用、行業管理系統、機關資訊化系統,應該是比較不錯的界面展示了,相對于上面第一種的架構界面,這種更具有浏覽器相容性,能夠适應多浏覽器的展現,這樣整個世界就清淨很多了。

是以為了搭建整個MVC+EasyUI等技術結合的Web開發架構,就從我原先開發的Web的通用權限管理系統進行改進,來實作整個開發架構的預演了。首先我利用Winform權管理系統的業務邏輯等底層子產品,在這個基礎上開發基于MVC的Web項目,也就是界面層以下的邏輯我們暫且不考慮,專注MVC帶來的變化。

下面的項目工程檔案視圖,是我做好的,基于MVC4+EasyUI的最新的Web權限管理系統。

基于MVC4+EasyUI的Web開發架構形成之旅--總體介紹

運作系統後,登入界面和主界面如下所示。

基于MVC4+EasyUI的Web開發架構形成之旅--總體介紹
基于MVC4+EasyUI的Web開發架構形成之旅--總體介紹

我們知道,一般資訊管理系統都是需要分頁顯示,編輯,檢視等内容的,這些使用EasyUI來實作效果還是比較好的。下面我以一個登入日志的子產品來展示分頁處理和彈出對話框,展示資訊。

基于MVC4+EasyUI的Web開發架構形成之旅--總體介紹

編輯界面效果如下所示。

基于MVC4+EasyUI的Web開發架構形成之旅--總體介紹

如果檢視資訊,則不需要編輯框了,直接用Lable展示即可,如下所示。

基于MVC4+EasyUI的Web開發架構形成之旅--總體介紹

 這些就是整個改造後的權限系統裡面的一些截圖界面,權當做一個總體性的概括,不設計技術實作的任何東西,下篇開始,着重介紹MVC項目中設計到的一些技術實作和經驗總結,希望大家多多支援。 

<a href="http://www.cnblogs.com/wuhuacong/p/3281103.html">基于MVC4+EasyUI的Web開發架構形成之旅--總體介紹</a>

<a href="http://www.cnblogs.com/wuhuacong/p/3317223.html">基于MVC4+EasyUI的Web開發架構形成之旅--界面控件的使用</a>

<a href="http://www.cnblogs.com/wuhuacong/p/3343967.html">基于MVC4+EasyUI的Web開發架構形成之旅--附件上傳元件uploadify的使用</a>

<a href="http://www.cnblogs.com/wuhuacong/p/3344096.html">基于MVC4+EasyUI的Web開發架構形成之旅--架構總體界面介紹</a>

<a href="http://www.cnblogs.com/wuhuacong/p/3352016.html">基于MVC4+EasyUI的Web開發架構形成之旅--基類控制器CRUD的操作</a>

<a href="http://www.cnblogs.com/wuhuacong/p/3361351.html">基于MVC4+EasyUI的Web開發架構形成之旅--權限控制</a>

<a href="http://www.cnblogs.com/wuhuacong/p/3667703.html">基于MVC4+EasyUI的Web開發架構經驗總結(1)-利用jQuery Tags Input 插件顯示選擇記錄</a>

<a href="http://www.cnblogs.com/wuhuacong/p/3669575.html">基于MVC4+EasyUI的Web開發架構經驗總結(2)- 使用EasyUI的樹控件建構Web界面</a>

<a href="http://www.cnblogs.com/wuhuacong/p/3669708.html">基于MVC4+EasyUI的Web開發架構經驗總結(3)- 使用Json實體類建構菜單資料</a>

<a href="http://www.cnblogs.com/wuhuacong/p/3736564.html">基于MVC4+EasyUI的Web開發架構經驗總結(4)--使用圖表控件Highcharts</a>

<a href="http://www.cnblogs.com/wuhuacong/p/3780356.html">基于MVC4+EasyUI的Web開發架構經驗總結(5)--使用HTML編輯控件CKEditor和CKFinder</a>

<a href="http://www.cnblogs.com/wuhuacong/p/3840321.html">基于MVC4+EasyUI的Web開發架構經驗總結(6)--在頁面中應用下拉清單的處理</a>

<a href="http://www.cnblogs.com/wuhuacong/p/3841338.html">基于MVC4+EasyUI的Web開發架構經驗總結(7)--實作省份、城市、行政區三者關聯</a>

<a href="http://www.cnblogs.com/wuhuacong/p/3871991.html">基于MVC4+EasyUI的Web開發架構經驗總結(8)--實作Office文檔的預覽</a>

<a href="http://www.cnblogs.com/wuhuacong/p/3872890.html">基于MVC4+EasyUI的Web開發架構經驗總結(9)--在Datagrid裡面實作外鍵字段的轉義操作</a>

<a href="http://www.cnblogs.com/wuhuacong/p/3873498.html">基于MVC4+EasyUI的Web開發架構經驗總結(10)--在Web界面上實作資料的導入和導出</a>

<a href="http://www.cnblogs.com/wuhuacong/p/4073203.html">基于MVC4+EasyUI的Web開發架構經驗總結(11)--使用Bundles處理簡化頁面代碼</a>

<a href="http://www.cnblogs.com/wuhuacong/p/4085682.html">基于MVC4+EasyUI的Web開發架構經驗總結(12)--利用Jquery處理資料互動的幾種方式</a>

<a href="http://www.cnblogs.com/wuhuacong/p/4085725.html">基于MVC4+EasyUI的Web開發架構經驗總結(13)--DataGrid控件實作自動适應寬帶高度</a>

<a href="http://www.cnblogs.com/wuhuacong/p/4093778.html">基于MVC4+EasyUI的Web開發架構經驗總結(14)--自動生成圖示樣式檔案和圖示的選擇操作</a>

繼續閱讀