ASP.NET Web開發架構之八 所有ERP部分的原始碼全部開放下載

來源:互聯網
上載者:User
文章目錄
  • 功能導航
  • 資料庫
  • 應用程式結構
  • 資料操作模式

前面的文章講解了技術細節,這一篇來瞭解一下這個架構的製作前後,經曆的一些思考。代碼只對部分需要的朋友有用,重要的是經曆和思路。前後花了3個月的時間,完成了這個基礎的ASP.NET頁面架構。

功能導航

來看一個整體的,圍繞這個圖,看圖說話,看看各個部分是如何完成的。

ERP系統功能多,如何設計一個簡潔的介面,承載它的功能導航,一努力追求的目標。這裡的菜單均是用菜單設計器設計出來,代碼中只是讀出來,並呈現成樹結構。一段時間曾把它分離到X_Menu表中,後來又合并代碼,直接讀取架構的菜單表,這樣達到B/S與C/S的統一。雖然不可能同時有兩種實現,但以此為技術追求,尋求好的實現方法。

同步對比一下,C/S程式上的實體,和上面的介面模式幾乎相同。

來看一個具體功能表項目System Administration的介面模式,它如所示

左邊的樹節點,右邊展示了它下面的功能類型,這個部分的設計,以菜單設計器設計它,先是功能類別,再為具體功能。

 

資料庫

SQL Server是首選的資料庫平台。其次,SQL Server有許多版本,高版本的可讀取低版本的資料檔案,但是一旦附加進入後,低版本的SQL Server再也無法讀取這個檔案。一開始以SQL Server 2008 R2開發,後來意識到要相容於客戶方面的的選擇,果斷把所有資料都遷移到SQL Server 2005中。版本資訊是

SELECT @@VERSIONMicrosoft SQL Server 2005 - 9.00.4035.00 (Intel X86)   Nov 24 2008 13:01:59   Copyright (c) 1988-2005 Microsoft Corporation  Express Edition with Advanced Services on Windows NT 6.1 (Build 7601: Service Pack 1) 

一個主要資料庫Framework,業務資料庫為TS。請先設定資料庫的主從關係,設定TS的資料庫屬性。


架構會為你做很多基礎的工作,這個簡單的配置,可以減少很多基礎的重複的工作量。

 

應用程式結構

首選為外掛程式式結構。架構只關注於自己的基礎資料讀寫,當遇到具體業務資料時,以反射方式交給業務類型去執行。

每個應用分四層,介面層Presentation,介面層IService,介面實現層Manager,業務實體層Businss Logic。

商務邏輯層為LLBL Gen產生,介面層和實現層由Code Smith產生,介面則根據應用布局,並綁定資料屬性。

ExtAspNet控制項進行了部分定製,修改了少量源碼以滿足架構的應用需要。原計劃是以它為基礎進行Extension的,後來發現這樣增加了測試的時間,也不利於修改維護,於是直接修改源碼。這樣帶來的問題是當ExtAspNet控制項有新版本時,需要手工合并代碼。選擇Beyond Compare對比兩個版本的檔案夾,有差異的地方用不同的顏色區分,開啟一個檔案後,合并到另一邊,儲存即可。

 

資料操作模式

有五種資料操作模式

1 單一實體表 例子比如上面提到的Company.aspx頁面

2 主從表 比如銷售單,有主表銷售單表頭和銷售單明細表

有表頭和表明細,一對多的關係。

3 List列表 比如要對一個或多個表進行查詢,顯示到一個頁面中

4 Lookup 尋找 用於資料選擇  資料查詢

5 Query 自訂查詢 使用者自訂查詢轉化為頁面功能

與List相似,只不過這是由查詢設計工具設計出來的,List由程式編碼完成。

 

在資料操作模式一節中,這個問題還要詳細討論,它對資料讀寫影響很大。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.