• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

        實戰 .Net 數據訪問層 - 1

        實戰 .Net 數據訪問層 - 1

        更新時間:2022-04-27 文章作者:未知 信息來源:網絡 閱讀次數:

        實戰 .Net 數據訪問層



        l 特別說明

        本篇實戰共分23段,非作者有意如此,乃受CSDN發表文章之64K所限。

        雖然有幾段根本沒有達到64K,但估計是HTML Source超過了這個范

        圍,所以也不得不單獨分段(大都是源代碼),請大家諒解。

        如果有朋友需要完整文檔,請發郵件給我:

        mailto:xuefeng.zhang@bearingpoint.com

        l 引言

        這次的討論是上一部分“剖析 .Net 下的數據訪問層技術”的一個續,但也可獨立成章,為突出主題,作者就特意換了一個標題。



        關于上次的內容,大家可以參考如下鏈接:

        http://www.csdn.net/Develop/read_article.asp?id=26689(一共六篇,id從26689到26694。也可以通過dev.csdn.net -> Windows/.NET進行訪問)



        在以下論述中,為統一起見,作者暫時將數據訪問層簡稱為DAL(Data Access Layer)。而在“我的方案”中,作者會介紹另一個“DAL”(Data Access Logic),為避免歧義,所有Data Access Logic將保留全名,不再采用簡稱。



        需要特別說明的是,以下列出的代碼全部基于.NET Framework 1.2實現,您也可以在.NET Framework 1.1上進行模擬,但某些ADO.NET 2.0中的更新內容可能無法使用,如:ObjectSpaces,DbDataReader等。

        您可以通過兩種方法使用.NET Framework 1.2:

        (1) 安裝Whidbey(Beta)或者Visual Studio .NET 2005(Preview),這是最簡單的方法;

        (2) 安裝.NET Framework 1.2 Runtime(Redistributables),使用Visual Studio .NET 2003(不支持Vistual Studio .NET 2002)進行開發。這種方式需要注意兩點:

        i. 對于Windows Application,在App.config中進行如下設置:

        <configuration>

        <startup>

        <supportedRuntime version="v1.2.30703"/>

        </startup>

        </configuration>

        對于Web Application,不需要進行什么設置,在安裝完.NET Framework 1.2 Runtime后已經自動添加了對IIS的支持;

        ii. 雖然可以通過Visual Studio .NET 2003編譯支持.NET Framework 1.2的項目,但是調試功能將不起任何作用(哪位朋友知道如何解決這個問題?)!

        另外,.NET Framework 1.2 Runtime也可以通過安裝Microsoft Yukon(Beta)自動得到。



        Ok,言歸正傳,以下部分就是我的方案。



        l 我的方案

        上次的討論主要集中在現有的技術,同時,也對不同技術在實現DAL時的差異做了一些分析,綜合下來,無非就是這么幾種:

        (1) ADO.NET

        ADO.NET是當前階段使用.NET進行DAL開發的基本方式,這里的DAL,也包括了對ADO.NET進行封裝后提供更簡單調用的各類實現,經典例子如:Duwamish,PetShop等;

        (2) O/R Mapping

        由于.NET Framework 1.2/2.0還未正式Release,包含其中的ObjectSpaces技術暫時還未能成為在.NET下進行DAL開發的首選武器,但是,隨著各類ORM Framework的逐漸成熟以及一些開發廠商的不斷努力,這方面正呈現出茁壯成長的勢頭;

        (3) X/Y Mapping

        這里的X/Y Mapping是指除了上述O/R Mapping之外的其它各類Data Mapping,如:XML to Relation Mapping,Relation to XML Mapping,Object to XML Mapping等,這部分內容不是本文重點,作者將另辟專文討論;

        (4) Distributed Process

        嚴格來說,這個并不是真正意義上的DAL技術,充其量只算錦上添花。不過,正因為考慮到DAL分布式處理的可能性,作者在自己的方案中將其單獨歸類,并不將其作為DAL的主要特性去實現。這方面的技術大家早已耳熟能詳:.NET Remoting,WebServices。



        以下,作者將給出一個自己的解決方案,通過實例,和大家一起探討一下.NET下的DAL實現技術。



        u 綜合現有的技術

        1. 概述

        說是解決方案,其實也就是一個“大雜燴”,作者希望通過綜合現有的.NET DAL技術來達到Generic目的,免去了為不同項目反復編寫DAL的無盡痛苦L,雖然絕對不是銀彈,總也想為廣大(我也是“受害者”之一J)DAL工程師們帶來一點點的改善。除此之外,Ease of Use也是這個解決方案必須考慮的另一難題!

        為簡單起見,以下將作者的解決方案簡稱為:DAF(Data Access Facade) Solution。



        總的來說,就作者個人觀點,DAL Generic有兩方面需要我們重點考慮:



        (1) 接口一致性:這個大部分Solution都能滿足,但有一點比較討厭,就是Data Entity的設計!這是一個很難Generic的家伙,經常讓人顧此失彼L

        (2) 存儲無關性:Database方面可以通過Provider Factory實現,但XML與Database的混合存儲模式就比較麻煩了!隨著XML在應用中的逐漸普及(Yukon甚至將其集成到了Database Table Column中),DAL將不可避免地與它產生交互L(當然了,還有種變相的做法也可以解決這個問題:將所有XML問題統統隔離在DAL之外J)



        下一段:http://www.csdn.net/develop/Read_Article.asp?id=2

        溫馨提示:喜歡本站的話,請收藏一下本站!

        本類教程下載

        系統下載排行

        主站蜘蛛池模板: 亚洲国产美女视频| 亚洲视频在线观看免费视频| 亚洲色大成网站www尤物| 亚洲国产精品无码久久九九| 亚洲精品亚洲人成在线| 成人免费毛片观看| 亚洲AV永久无码天堂影院| 卡一卡二卡三在线入口免费| 亚洲精品久久无码av片俺去也| 日韩一级在线播放免费观看| 精品亚洲福利一区二区| 亚洲人午夜射精精品日韩| 黄视频在线观看免费| 亚洲av伊人久久综合密臀性色| 日本一区二区免费看| 91亚洲自偷在线观看国产馆| 成年美女黄网站色大免费视频| 亚洲欧美一区二区三区日产| 亚洲福利在线播放| 免费黄色电影在线观看| 亚洲日本在线播放| 国产精品久久久久影院免费| h视频在线免费观看| 久久久久久亚洲av成人无码国产| 亚洲黄色免费网站| 亚洲youwu永久无码精品| 亚洲国产一级在线观看| 国内精品免费在线观看| 亚洲国产精品线观看不卡| 国产成人无码免费视频97 | 亚洲精品国产精品乱码不99| 欧洲人免费视频网站在线| 激情综合亚洲色婷婷五月APP| 日韩免费观看的一级毛片| a级毛片毛片免费观看永久| 亚洲国产情侣一区二区三区| 国产一级做a爱免费视频| 久久久久久AV无码免费网站下载| 亚洲一区精彩视频| 亚洲色无码专区在线观看| 在线天堂免费观看.WWW |