程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> .NET分布式架構開發實戰五 Framework改進篇

.NET分布式架構開發實戰五 Framework改進篇

編輯:關於.NET

本來打算這篇文章來寫DAL的重構的,現在計劃有點改變。之前的文章,園子裡的朋友給出了不少的反饋,特別感謝金色海洋和Virus兩位朋友的一些反饋。周末的這兩天,對文章中開發的那個Framework做了一些改進,雖然說系列文章會慢慢的給出代碼,但是這兩天的一些想法讓我很興奮,迫不及待的和大家分享一下,也當是對文章中以後給出的Framework先睹為快吧。

本篇文章涉及技術不多,主要是些想法(代碼部分正在實現)。

最主要的改進主要在於業務層開發的簡化。

大家都知道系統的核心就是業務邏輯層了,業務邏輯的代碼往往得我們一行行的敲代碼,而且不同的系統,每次都得一行一行的重頭來寫,這樣的開發的效率可想而知了。基於這個原因,所以很有必要用一些工具和方法來加速開發。

經過這兩天的思考,個人認為最大的改進就是:業務邏輯類的圖形化配置。我先給出圖的示例,然後再詳細的說明這個思想。

大家知道,在一個BLL類中包含了大量的業務規則和驗證規則,而且這些規則往往需要手工來寫,特別是一個業務類的一些屬性,要對他們的數據類型,長度,格式,狀態更改跟蹤,是否可以讀寫等進行驗證,雖然說現在已經有了一些類庫可以使用,如Enterprise Library中的Validation組件,但是我們還是要寫代碼,如果把這些規則通過圖形化的拖拽的方式,或者圖形的配置方式來生成C#代碼,然後需要定制的部分再手動的修改,這樣開發就簡化多了(甚至可以把自動生成的代碼和需要手寫的代碼分別放在partial類中,大家可以想想VS中開發Window程序時,VS就把那些自動生成的代碼放到了另外的一個partial類中)。用過Enterprsie Library的朋友已經很清楚那個圖形化配置工具的威力。

首先,來看第一個圖(設計的草圖)。

當我們新添加了一個業務類的以後,假設這個業務類的為 Product,在”解決方案”管理器中點擊右鍵,選擇”配置業務類”,就會彈出圖形化的配置窗體,從草圖中可以看出:

1.Properties,為業務類添加的屬性。

2.DataProvider,這個配置表明了業務類使用哪個數據提供者:AdoDotNetProvider,LinqProvider,EntityFrameworkProvider.(這些Provider就是之前DAL系列文章最終會完成的那些Provider)

3.MappingType這個業務類和那個數據來源體映射,這裡有兩個選擇:DataTable,DataEntity(Linq實體或者EF實體,DataTable 的改進是來源於金色海洋和virus,thanks)

4.MappingTypeName:這個配置項就表明這個業務類會和哪個數據來源體的屬性進行映射,如,在上面選擇了MappingType為DataEntity,而且選擇DataEntity的名字MS_Product(通過Linq生成的實體,對應數據庫中的MS_Product表)。當然,一個業務類的屬性字段可能來自多個DataEntity的組合,所以,這裡的MappingTypeName是多個。

下面來看第二個草圖。

這個圖的出現時當點擊了第一個圖中的Properties出現的,這個界面就是專門來配置業務類的具體的屬性的。

Name:就是屬性的名字。

MappingTo:就是指出要和哪個數據實體的哪個屬性映射。(之前第一個界面已經制定的數據實體)。

ValidationRules:用來指定為這個屬性使用哪些規則。

下面就來看看第三個草圖。

這個草圖和之前的第二個草圖類似,只補過這個界面是專門用來給特定的屬性配置驗證規則的。

就介紹到這裡了,希望大家以後多多提出意見,便於進一步的改進,最後開發的Framework會以源代碼的形式給出的。

出處:http://www.cnblogs.com/yanyangtian

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved