( 聲明:本系列只想給大家介紹.net框架,并不是語法和類的使用的講解,所以只能概括的描述一下所提到的類,如果有疑問可以到MSDN上面去查 )
ADO.net類庫有兩種完全不同的方式來實現數據訪問:連接式和斷開式.ADO.NET沒有提供單一的方式和不同的數據庫進行通信,而是提供了多種數據提供器,這樣的好處是可以將某種類型數據庫的特性發揮出來.我們來看看ADO.NET中的核心類。
IDbConnection:定義配置某個數據庫連接的一些成員。如連接字符串,超時,連接狀態等。
IDbCommand:定義命令以及所執行的操作。如ComandText,ExecuteReader,ExecuteNonquery,Parameter等。
IDbDataParameter:他繼承了IDataParmeter并擴展了他,定義了DbType,Direction,ParameterName,Value等。
IDbDataAdapter:繼承自IdataAdapter,IdataAdapter中主要來完成數據的映射,然后IDbDataAdapter擴展了IdataAdapter,加入了,Delete,select,Update,Insert這四個IDbCommand命令。GOF23中的Adapter(適配器)模式在這里被使用,SqlAdapter等類就是用來適配各種已經有了詳細接口的DB。
IDataReader:IDataReader繼承了IDataRecord并對其擴展,Idatarecord用來定義讀取強類型化的數據,Getint16,GetDateTime之類,Idatareader加入了讀取對象的常用行為,Next,Depth等。
圖中Dbconnection,DbCommand等抽象類分別繼承了上述的接口,并實現了一些任何數據庫都公用的方法而已,這里不再贅述。
他們之間的協作關系如圖:
在這里就要講到題目所示的架構模式中的數據源架構模式和領域邏輯模式,MS在這里用了什么模式呢,首先我們來了解一下數據源都有哪幾種架構模式:
1.表數據入口:一個表實例處理數據庫表中的所有行.(Adapter中承載了一張表,他就代表數據庫,可以對數據進行填刪改查等操作)
2.行數據入口:訪問表中單條記錄地對象,一行一個實例.(DataReader,這里的行數據只能讀取,而不能修改.每一次Reader.Next(),就會返回一個數據行.)
3.數據影射器(ORM):.net中沒有這種模式,ORM本身就很復雜,這里就不講解了.
在.net中有表數據入口和行數據入口,這兩種模式的實現是為了滿足一些應用,行數據可以更好的面向對象,表數據操作起來直觀.
領域邏輯模式,也就是所謂的業務羅基層,它有以下幾種架構模式:
1.事物腳本:也就是使用過程來實現業務邏輯.老ASP的寫法,就是這種過程性的編程.
2.領域模型:合并了行為和數據的對象模型,比如你建立了一個Person類,里面包括他的名字,這就是數據,然后你的業務邏輯是給他改名字,就會做一個改名字的方法.這就是簡單的領域模型.
3.表模塊:處理數據庫表或視圖中的所有業務邏輯的一個實例,他通常需要平臺的支持,而.NET中的DataSet就是這種模式的應用。
我們可以用Dataset來完成我們的業務邏輯,一個很方便的應用.
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
