今天用了一個多小時的時間學習ANF的DAL,感覺自己的對ANF有了進一步的了解,隨之也產生的疑問,在些點發表一點自己的體會。
using 本人很菜
(1)DAL(數據層)類組成:
ANF的數據層主要是ForumsDataProvider(簡稱:FDP)和SqlDataProvider(簡稱:SDP),以下的“FDP”及“SDP”指代上述名稱。
(2)DAL(數據層)類關系:
ForumsDataProvider和SqlDataProvider這兩個Class,“FDP”是個abstract class,“SDP”繼承“FDP”,“SDP”內提供實現了“FDP”的所有abstract的type object 和 type method。
(3)DAL(數據層)類職能:
“FDP”是base class,全部對數據庫的底層操作封裝在“SDP”內,底層通過IDataReader訪問SP和TSQL,基本上一個SP內就封裝了TSQL-SIUD,通過Delete mark的方式刪除數據,通過傳入的Primary ID判斷是Update還是Insert操作。
(4)DAL(數據層)訪問及操作數據庫步驟:
當某一個頁面要對數據進行訪問時,首先“SDP”通過查詢對像EntityClass對應的ArrayList或是ArrayList的封裝類,的Instance(被API Cache,本人認為是ANF提高數據庫讀取速度的主要手段)Get方法,通過“反射方式”反射構造-GetConstructor“FDP”的abstract的method和object(實際執行的還是“SDP”的方法),最後Bind給Repeater或DataList之類的對像,完成數據讀取。
本人水平很菜,不怕大家扔磚……
http://www.cnblogs.com/sellnet/archive/2006/08/31/491438.Html