• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    淺談基于ASP.NET平臺下使用類庫進(jìn)行數(shù)據(jù)庫編程

    2009-04-21 03:09:10容湘萍
    關(guān)鍵詞:基類類庫調(diào)用

    摘要:文章立足于實(shí)際應(yīng)用,闡述了ADO.NET訪問數(shù)據(jù)庫的步驟,并利用較大篇幅對ASP.NET平臺下使用類庫進(jìn)行數(shù)據(jù)庫操作的方法進(jìn)行了詳細(xì)論述,并給出源代碼和詳細(xì)注釋,文章給出的所有代碼均在ASP.NET2.0下調(diào)試通過。

    關(guān)鍵字:數(shù)據(jù)庫;類庫;調(diào)用

    中圖分類號:TP31文獻(xiàn)標(biāo)識碼:A

    文章編號:1674-1145(2009)05-0153-02

    ASP.NET不是ASP的簡單升級,而是全新一代的動態(tài)網(wǎng)頁實(shí)現(xiàn)系統(tǒng)。它是一種建立在通用語言上的程序構(gòu)架,能被用于一臺Web服務(wù)器來建立強(qiáng)大的Web應(yīng)用程序。它是微軟發(fā)展的新體系結(jié)構(gòu).NET的一部分,是ASP和.NET技術(shù)的結(jié)合。ASP.NET在面向?qū)ο笮?、?shù)據(jù)庫連接、大型站點(diǎn)應(yīng)用等方面都優(yōu)于ASP,ASP.NET還提供更多的其他方面的新特性,例如:內(nèi)置的對象緩存和頁面結(jié)果緩存;內(nèi)置的XML支持,可用于XML數(shù)據(jù)集的簡單處理;服務(wù)器控制提供了更充分的交互式制等。

    ASP.NET中的ADO.NET和ASP中的ADO相對應(yīng),它是ADO的改進(jìn)版本。ADO.NET的最重要概念之一是DataSet。DataSet是不依賴于數(shù)據(jù)庫的獨(dú)立數(shù)據(jù)集合。(所謂獨(dú)立,就是:即使斷開數(shù)據(jù)鏈路,或者關(guān)閉數(shù)據(jù)庫,DataSet依然是可用的。)如果你在ASP里面使用過非連接記錄集合(Connectionless Recordset),那么DataSet就是這種技術(shù)的最徹底的替代品。在ADO.NET中,通過Managed Provider所提供的應(yīng)用程序編程接口(API),可以輕松地訪問各種數(shù)據(jù)源的數(shù)據(jù),包括OLEDB所支持的和ODBC支持的數(shù)據(jù)庫。

    ADO.NET訪問數(shù)據(jù)庫的步驟是:

    1.創(chuàng)建一個數(shù)據(jù)庫鏈路;

    2.請求一個記錄集合;

    3.把記錄集合暫存到DataSet;

    4.如果需要,返回第2步;(DataSet可以容納多個數(shù)據(jù)集合)

    5.關(guān)閉數(shù)據(jù)庫鏈路;

    6.在DataSet上作所需要的操作。

    DataSet在內(nèi)部是用XML來描述數(shù)據(jù)的。由于XML是一種平臺無關(guān)、語言無關(guān)的數(shù)據(jù)描述語言,而且可以描述復(fù)雜數(shù)據(jù)關(guān)系的數(shù)據(jù),比如父子關(guān)系的數(shù)據(jù),所以DataSet實(shí)際上可以容納具有復(fù)雜關(guān)系的數(shù)據(jù),而且不再依賴于數(shù)據(jù)庫鏈路。

    按照上面的訪問數(shù)據(jù)庫的步驟方法,在需要對數(shù)據(jù)庫進(jìn)行操作時,只需按部就班的寫出相關(guān)代碼和參數(shù)就能比較容易的實(shí)現(xiàn)ADO.NET編程。但在進(jìn)行大型軟件開發(fā)時,如果每訪問一次數(shù)據(jù)庫,就對操作數(shù)據(jù)庫的代碼進(jìn)行重復(fù)編寫,則大大增加了程序代碼的冗余度,降低了軟件的可靠性和可讀性。所以本文使用類庫對數(shù)據(jù)庫進(jìn)行訪問,將對數(shù)據(jù)庫的操作代碼進(jìn)行簡化。按照訪問數(shù)據(jù)庫的步驟,將相應(yīng)的代碼寫入類中,在使用時直接調(diào)用相關(guān)的類,就可以實(shí)現(xiàn)對數(shù)據(jù)庫的訪問操作。

    具體步驟如下:

    首先創(chuàng)建一個類庫DAL,在其中定義數(shù)據(jù)庫的基類database:

    public class database//數(shù)據(jù)庫基類

    {

    public SqlConnection databaselink() //連接數(shù)據(jù)庫

    {

    SqlConnection conn=new SqlConnection ();

    conn.ConnectionString =ConfigurationSettings.AppSettings .Get ("connstr");

    //通過web.config文件獲取connstr作為conn連接字符串。

    return conn;

    }

    public DataSet tablelink(string linkstr,SqlConnection conn)

    //連接表,linkstr為連接字符串

    {

    SqlDataAdapter sda=new SqlDataAdapter(linkstr,conn);

    DataSet ds= new DataSet();

    try

    {

    sda.Fill (ds);

    }

    catch

    {

    Response.Write("");

    }

    return ds;

    }

    }

    再創(chuàng)建另一個類庫BUL,在其中定義操作數(shù)據(jù)庫的類operatdatabase:

    using dal;//調(diào)用數(shù)據(jù)庫基類的命名空間

    public class operatdatabase//操作數(shù)據(jù)庫的類

    {

    public DataSet selecttable(string linkstr) //查詢表,

    {

    database db=new database ();

    SqlConnection conn=db.databaselink();

    DataSet ds=new DataSet();

    ds=db.tablelink(linkstr,conn);

    return ds;

    }

    public void updatatable(string linkstr) //更新記錄

    {

    database db=new database ();

    SqlConnection conn=db.databaselink();

    DataSet ds=new DataSet();

    ds=db.tablelink(linkstr,conn);

    }

    public void datalist(DataGrid DataGrid1,string linkstr) //綁定數(shù)據(jù)

    {

    operatdatabase db=new operatdatabase() ;

    DataSet ds=new DataSet();

    ds=db.selecttable (linkstr);

    DataGrid1.DataSource =ds.Tables[0] ;

    DataGrid1 .DataBind ();

    }

    }

    在需要進(jìn)行數(shù)據(jù)庫操作時,首先要調(diào)用操作數(shù)據(jù)庫的類operatdatabase的命名空間BUL,然后再調(diào)用查詢、更新和綁定數(shù)據(jù)庫的相關(guān)函數(shù)。

    using bul;

    operatdatabaseop1=new operatdatabase() ;

    //定義一個操作數(shù)據(jù)庫的對象op1

    op1.selecttable(string linkstr);

    op1.updatatable(string linkstr);

    op1.datalist(DataGrid DataGrid1,string linkstr);

    //使用該對象的實(shí)例對數(shù)據(jù)庫進(jìn)行操作

    在一般的信息管理系統(tǒng)程序中,如果使用類庫進(jìn)行數(shù)據(jù)庫編程,則只需在數(shù)據(jù)庫操作時反復(fù)調(diào)用操作數(shù)據(jù)庫的類operatdatabase,定義一個關(guān)于該類的對象,使用相應(yīng)的方法,就能減少相當(dāng)多的重復(fù)代碼,增加了程序的健壯性,大大提高了程序的可讀性與移植性。

    參考文獻(xiàn)

    [1]李萬寶.ASP.NET技術(shù)詳解與應(yīng)用實(shí)例[M].機(jī)械工業(yè)出版社.

    [2]鄭霞,趙輝,徐慧.ASP.NET2.0編程技術(shù)與實(shí)例[M].人民郵電出版社.

    作者簡介:容湘萍,女,湖南邵東人,廣東省惠州商業(yè)學(xué)校計算機(jī)助理講師,研究方向:計算機(jī)應(yīng)用。

    猜你喜歡
    基類類庫調(diào)用
    基于C#面向?qū)ο蟪绦蛟O(shè)計的封裝、繼承和多態(tài)分析
    用Java編寫客戶機(jī)/服務(wù)器端應(yīng)用程序
    核電項目物項調(diào)用管理的應(yīng)用研究
    Python在數(shù)據(jù)可視化中的應(yīng)用
    LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
    數(shù)據(jù)結(jié)構(gòu)課程教學(xué)改革方案和應(yīng)用效果
    軟件工程(2017年12期)2018-01-29 17:35:55
    數(shù)據(jù)結(jié)構(gòu)可視化類庫的設(shè)計與實(shí)現(xiàn)
    基于系統(tǒng)調(diào)用的惡意軟件檢測技術(shù)研究
    空戰(zhàn)游戲設(shè)計實(shí)例
    一種基于用戶興趣的STC改進(jìn)算法
    肥乡县| 永嘉县| 囊谦县| 临邑县| 张家川| 阿克陶县| 云梦县| 虎林市| 修水县| 密云县| 英吉沙县| 慈利县| 德令哈市| 南岸区| 精河县| 襄城县| 富源县| 仪陇县| 乌兰县| 岢岚县| 泰顺县| 乌拉特中旗| 本溪| 温宿县| 松阳县| 嵊泗县| 新泰市| 泰安市| 神木县| 汝南县| 丰台区| 修文县| 汉阴县| 荆州市| 旌德县| 镇坪县| 大同县| 公安县| 平定县| 秦安县| 阿拉善左旗|