六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

實戰 .Net 數據訪問層 - 23

[摘要]u 使用現成的框架Ø 首選當然是.NET Framework即將正式推出的ObjectSpaces!Ø 如果希望Tot...
u 使用現成的框架

Ø 首選當然是.NET Framework即將正式推出的ObjectSpaces!

Ø 如果希望Total Solution,Borland ECO就是最佳選擇!



Ø 其它

n 開源項目推薦使用OPF(國外)

n 商業產品推薦使用Grove(國內)



u 設計自己的持久層

Ø 如果希望自己設計輪子,那么,最好的參考資料莫過于這篇文章:http://www.ambysoft.com/persistenceLayer.pdf



Ø 它山之石,可以攻玉

此處之它山,非J2EE莫屬,經典案例Hibernate早已家喻戶曉,您還需要等待嗎?

雖然平臺不同,但優秀的設計是大家共同的財富,.NET guys們快快行動起來吧!



Ø 代碼是永遠的老師,請多多關注這兩個.NET Open Source項目:

n OPF

n OJB.NET



l 小結

u Data Access Layer在整個系統架構中的位置

這是本文最后一幅示意圖,希望帶給您一些幫助:










u DAF Solution之抉擇篇

Ø 確定接口是關鍵:No. 1!

無論采用什么技術,這個總是最最關鍵的一步:至少,作者是這么認為的。



采用了DAF Solution后,其實已經對具體使用什么Data Access Logic技術沒必要特別Care,只要接口確定,連很多歷史遺留問題都可輕松解決了!



Ø 訪問技術隨心所欲:Just Do It!

一般做項目前,當我們設計Data Access Logic時,大都需要提前決定采用什么技術架構,如:Stored Procedure + DataSet / DataTable / DataView(Duwamish模式,結構簡單,操作方便),或者SQL + Provider Factory + DataReader + Entity(PetShop模式,性能不錯,可移植能力強),而采用了DAF Solution后,這些不再成為阻礙系統架構師進行Data Access Logic設計時的障礙了!



你完全可以這么做:設計時全部采用Duwamish模式,而在實現時(可能基于性能考慮)將部分Data Access Logic操作調整為PetShop模式。甚至,如果其它Layer的調用者對ADO.NET不是特別熟悉(很正常),也可以決定在某些Data Access Logic的內部使用O/R Mapping,通過Entity Façade返回后可以很輕松地以OO的方式進行后續處理!



不過,盡管如此,還是有些Issues需要具體情況具體分析:

(1) Stored Procedure在帶來便利、高性能的同時,也有移植上的問題需要考慮;

(2) O/R Mapping在提高易用性的同時,也為性能、復雜度付出了一定代價;

(3) 何時采用DataReader,如何更快的訪問DataSet,始終是個難以取舍的問題(雖然作者曾經對此作過斷言),愛恨兩難啊!

(4) 是否使用Distributed Process?安全問題又如何解決?.NET Remoting沒有給出很好地解決方案,WebServices雖然有,但能保證與其它系統兼容嗎?



僅舉4例,可見一斑。

雖然這些現實問題都要一一解決,但在DAF這棵大樹下,您還是有較大的自由度,不必再為統一架構設計而頻添很多煩惱了!



Ø Storage不在話下:Data Entity Facade!

在這里,作者認為,或許稱之為“Persistence不在話下”更貼切一些。

可以這么說,DAL的基石來自DAF,而DAF和外界的Bridge則是Data Entity Façade。正是其統一的外表才讓我們得以自由應付隨時可能發生的各種變化!



返回XML?沒問題!

返回XML后不想修改調用代碼?很簡單,做個EntityConvert!



O/R Mapping很酷,讓我返回對象吧?改一下配置文件,再寫個

O/R Mapping Data Access Logic!是不是也很酷啊?



DataSet令我們的系統不堪重負,客戶最近頻繁投訴:您呼叫的

網頁暫時沒有應答,請稍后再刷,咋辦呢?

這也不難:撤下DataSet,換上DataReader,Data Entity

Façade已將不同的數據訪問基站構建到您的Server上,它

會確保您的系統99.98%位于服務區內(還有0.01%可能是您

忘打.NET Framework的最新Patch了,剩下的0.01%也很好

辦,快去買條新內存or加個CPU吧)!



……(如您需要返回其它系統無法辨認的東東,請撥打如下免費電話:800820xxxx,DAF Solution小組將為您提供幫助……)



u n-Tier架構下n之真諦

很簡單,2句話結尾:

n==?不重要,關鍵是:數據訪問層!

若要架構好,接口是命脈!



l 參考

u MSDN

Ø .NET Framework 1.2 Documentation

Ø Longhorn SDK

Ø Data Access and Storage

Ø C# 2.0 Specification

u Design Patterns

Ø GOF 23

Ø Microsoft Patterns & Practices

u Community

Ø The Microsoft .NET Framework Community

Ø TheServerSide.NET

Ø ASP.NET Starter Kits

Ø The Code Project

Ø Dot Net Persistence

u 其它

Ø Developing the Microsoft Business Framework

Ø Borland ECO

Ø Constructor

Ø DotNetNuke

Ø Rational XDE




主站蜘蛛池模板: 青青草原91 | 探花视频免费播放观看 | 亚洲一区二区三区四区在线 | 视频在线免费观看网址 | 色草视频 | 婷婷六月久久综合丁香可观看 | 亚洲综合色婷婷六月丁香 | 日本无人区码卡1 | 中文字幕第一页在线播放 | 日本免费网站视频 | 午夜高清在线观看免费6 | 青草青草视频 | 日韩经典欧美一区二区三区 | 羞羞漫画在线阅读页面漫画入口页面弹窗无限 | 色我网站 | 亚洲国产欧美在线人成 | 日本理论视频 | 天天操天天干天天 | 日韩在线视频二区 | 一道本不卡视频 | 日本午夜免费福利视频 | 色婷婷久久合月综 | 四虎国产永久免费久久 | 日韩精品一区二区三区中文精品 | 亚洲第一a | 日日干狠狠 | 日本高清视频网站www | 先锋久久 | 性欧美性| 天天拍天天干 | 三级理论 | 亚洲国产成人久久一区久久 | 天天干一干 | 中文字幕人成乱在线视频 | 亚洲成人免费网站 | 青青国产成人久久91网 | 欧洲激情视频 | 中文伊人 | 在线免费黄 | 欧美性色黄在线视频 | 天天视频国产精品 |