二十4、【開源】EFW框架Winform前端開發之項目結構說明和調試方法

回《【開源】EFW框架系列文章索引》       html

EFW框架源代碼下載V1.2:http://pan.baidu.com/s/1hcnuA
數據庫

EFW框架實例源代碼下載:http://pan.baidu.com/s/1o6MAKCa瀏覽器

 

      前言:前面幾章講解了開發一個Web系統的完整目錄結構與界面開發框架JqueryEasyUI,接下來幾章講解開發Winform系統的完整目錄結構與界面開發的相關控件。開發Winform系統又分爲兩種類型,C/S模式和C/S/S模式;其中C/S/S模式的中間層在EFW框架中使用WCF做爲中間件;服務器

本文要點:框架

1.常見三種系統類型介紹函數

2.Winform系統目錄結構總體說明性能

3.C/S系統的目錄結構及調試方法spa

4.C/S/S系統的目錄結構及調試方法設計

1.常見三種系統類型介紹:

1)C/S又稱Client/Server或客戶/服務器模式。服務器一般採用高性能的PC、工做站或小型機,並採用大型數據庫系統,如Oracle或 SQL Server。客戶端須要安裝專用的客戶端軟件。調試

2)B/S是Brower/Server的縮寫,客戶機上只要安裝一個瀏覽器(Browser),如FireFox或IE,服務器安裝Oracle或 SQL Server等數據庫。瀏覽器經過Web Server 同數據庫進行數據交互。

3)C/S/S是三層體系結構,是在C/S客戶端與數據庫之間加入一個「中間層」,也叫「中間件」,中間層包括業務邏輯層與數據訪問層,有WcfController、ObjectModel、Dao、Entity;

 

 

三種類型在程序設計上均可以按照三層結構來實現,程序上的三層在不一樣環境中運行而造成上面三種類型,好比:C/S類型就是程序三層都運行在客戶機上的,而C/S/S類型界面層運行在客戶機上,而其餘的邏輯層和數據訪問層都運行在中間件服務器上;

程序三層結構的優勢,更能適用企業系統日益增加的複雜度和靈活性,分層設計遵循高內聚、低耦合原則,實現擴展、維護和重用的要求,能夠大大提升開發效率。

 

2.Winform系統目錄結構說明

 

如上圖Winform系統的目錄結構,兩種類型的區別在於C/S/S解決方案中多了一個WCF服務主機的程序,其餘的都差很少,配置文件都在Config目錄,界面層代碼在Books.Winform項目,邏輯層代碼在Books項目;能夠說兩種類型共用界面代碼和邏輯代碼,只是在控制器上前者用WinController,後用wcfController;wcfController控制器又分爲兩個代碼文件bookwcfclientController.cs和bookWcfController.cs分別放在Books.Winform項目中和Books項目中;兩個文件再程序運行時經過WCF服務進行通信;雖然兩種類型都是在一個解決方案中編寫代碼,可是程序的安裝和部署也是有區別的,C/S類型全部代碼都是都是在客戶端運行的;而C/S/S類型Books.Winform項目運行在客戶端,而Books項目運行在WCF服務主機上,WCF服務主機是部署在服務器上的;

 

3.C/S類型Winform系統項目結構和調試方法

1)、EFWWin.exe:客戶端啓動程序     

說明: 框架中的登陸、主界面和基礎功能都封裝在此程序中

依賴項:無

2)、Books.Winform:界面層

說明: 1. 界面文件都放置在此項目

依賴項:EFWCoreLib、DevComponents.DotNetBar二、Books

3)、Books:邏輯層

說明: 1.邏輯層代碼都放在此項目,包括Controller、ObjectModel、Dao和Entity

依賴項:  EFWCoreLib、企業庫EntLib

 

程序的調試方法

 

如上圖,咱們經過調試的方法搞清楚界面表格顯示數據的過程。把EFWWin設爲啓動程序,F5運行程序,登陸進入主界面,點擊菜單打開界面表格控件默認顯示書籍數據,在傳統的作法是在界面代碼中的構造函數或者frm_Load()事件中編寫加載數據的代碼。而使用EFW框架中的控制器的話作法就不同了,程序的入口不是從上述兩種方式中開始,而是從控制器重寫的Init()方法中進入;調用獲取數據的方法GetBooks(),調用BookDao獲取DataTable數據,再經過接口綁定到界面的表格控件上顯示數據;

 

4.C/S/S類型WCF系統項目結構和調試方法

1)、EFWWin.exe:客戶端啓動程序     

說明: 框架中的登陸、主界面和基礎功能都封裝在此程序中

依賴項:無

2)、WCF服務主機.exe:WCF中間件啓動程序          

說明:WCF宿主程序,邏輯層項目在此程序中運行

依賴項:無

3)、Books.Winform:界面層

說明: 1. 界面文件都放置在此項目 2.WCF項目還有wcfclientController代碼文件

依賴項:EFWCoreLib、DevComponents.DotNetBar二、Books

4)、Books:邏輯層

說明: 1.邏輯層代碼都放在此項目,包括Controller、ObjectModel、Dao和Entity

依賴項:  EFWCoreLib、企業庫EntLib

 

程序調試方法:

 

如上圖,調試WCF程序須要啓動兩個程序EFWWin和WCFHosting,在VS中啓動WCFHosting,點擊啓動WCF服務,再在Out目錄中雙擊運行EFWWin.exe程序,接着登陸進入主界面點擊菜單打開界面,斷點進入bookwcfclientController中的Init(),再經過GetBooks()方法向WCF中間件發送請求,斷點進入bookWcfController中的GetBooks(),調用BookDao獲取DataTable數據,而後轉從Json數據返回bookwcfclientController中,將WCF返回的Json反序列化爲DataTable顯示在表格控件上;

相關文章
相關標籤/搜索