|
討論了如何實(shí)現(xiàn)一個(gè)簡單的數(shù)據(jù)源控件,但還沒有完全的實(shí)現(xiàn).這次我們具體的實(shí)現(xiàn)一些方法來加強(qiáng)數(shù)據(jù)源控件的功能.這里我們根據(jù)SqlDataSource控件的一些功能來實(shí)現(xiàn)。本篇示例源碼來自Professional ASP.NET2.0 ServerControl and Component Development,即是模仿SqlDataSource而制作.我把控件功能減弱,代碼整理了下,我們只關(guān)注重要的部分,一步一步上去。
一.概念
1.首先你必須熟悉ADO.NET的使用,然后抽象出一部分屬性和方法,如執(zhí)行sql語句命令類型,這個(gè)屬性你便可以抽象出來,當(dāng)是控件功能的一部分.所以這部分代碼不再列出,大家仔細(xì)看就會(huì)明白了。
2.數(shù)據(jù)操作注意事項(xiàng)
(1)數(shù)據(jù)前后操作事件,我們見過SqlDataSource的數(shù)據(jù)前后操作事件,如讀取數(shù)據(jù),前后事件則是Selecting和Selected
假設(shè)getData方法是讀取數(shù)據(jù)庫,那么寫成代碼就是這樣
protected override IEnumerable ExecuteSelect(DataSourceSelectArguments arguments)
{
SqlDataSourceSelectingEventArgs e = new SqlDataSourceSelectingEventArgs(com, arguments);
//嘗試數(shù)據(jù)檢索操作前引發(fā) Selecting 事件
OnSelecting(e);
return getData();
SqlDataSourceStatusEventArgs ee = new SqlDataSourceStatusEventArgs(com, -1, null);
//嘗試數(shù)據(jù)檢索操作后引發(fā) Selecting 事件
OnSelected(ee);
}
NET技術(shù):asp.net控件開發(fā)基礎(chǔ)(23),轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。