• 
    

    
    

      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)算法
      原平市| 黄骅市| 肃北| 嘉定区| 唐河县| 德庆县| 襄汾县| 高邑县| 新乡市| 容城县| 商城县| 达拉特旗| 莎车县| 华安县| 嵩明县| 揭阳市| 女性| 额济纳旗| 洛扎县| 于田县| 林西县| 绥棱县| 都昌县| 双桥区| 南木林县| 陵川县| 乐安县| 丹江口市| 襄城县| 汝阳县| 炎陵县| 桃源县| 张家川| 新野县| 新化县| 东山县| 新津县| 黄冈市| 高安市| 丹棱县| 镇沅|