成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

用VS.NET創建.NET可復用數據庫組件

開發 后端
微軟的 .NET 架構的出臺,為我們構建分布式應用系統提供了一個強大的工具。相比于傳統的 Windows 應用程序的 COM 組件,.NET 的組件開發要簡單、快捷的多。而且組件的部署也不像 COM 組件那樣需要在注冊表里做標記,.NET 組件只要拷貝到相應的文件夾中就可以了。

下面我們就用 .NET 程序的集成開發工具 Visual Studio .NET 實際開發一個Access2000數據庫存取組件,并將它重復使用在另外的 ASP.NET 應用系統中。

1.組件的創建

啟動 VS.NET,新建 Visual C# 項目,模板選“類庫”。

這樣就在我們機器的“我的文檔”\Visual Studio Projects 下生成一個新的文件夾ClassLibrary1。并且自動生成Class1.cs 文件:

using System;  
  namespace ClassLibrary1  
  { ///   
    /// Class1 的摘要說明。  
    ///   
    public class Class1  
    {  public Class1() 
       {  //  
           // TODO: 在此處添加構造函數邏輯  
           //  
       }  
    }  }

因為我們即將生成的組件與數據存取有關,所以必須添加數據庫引用語句:

using System.Data; 
  using System.Data.OleDb;

另外我們可以把命名空間換成我們自己的命名myDB,類名也換成myDbLink。然后我們還定義了三個屬性,使我們的代碼通用性更強:

public string sDbPath = "";  //數據庫路徑(包括數據庫名)  
public string sDbTable = ""; //表名  
public string sPassword = ""; //數據庫口令

myDbLink類中的getData()方法將返回查詢的表的視圖。這樣我們定制后的完整代碼如下:

using System;  
  using System.Data;  
  using System.Data.OleDb;  
  namespace myDB  
  {  public class myDbLink  
    {  
       public string sDbPath = "";  
       public string sDbTable = "";  
       public string sPassword = ""; 
       public DataView getData()  
       {  
           OleDbConnection oConn;  
           OleDbDataAdapter oAdp;  
           DataSet oDtSt;  
           oConn = new OleDbConnection
("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" sDbPath ";Password=" sPassword ";"); 
           oConn.Open();  
           oAdp = new OleDbDataAdapter("select * from " sDbTable, oConn); 
           oDtSt = new DataSet();  
           oAdp.Fill(oDtSt, "table");  
           return oDtSt.Tables["table"].DefaultView;  
       }  
    }  
  }

getData()方法中的代碼的意義為:首先聲明三個引用類型的變量oConn(數據庫連接對象),oAdp(數據適配器對象),oDtSt(數據集對象)。然后實例化數據庫連接對象并打開數據庫連接oConn;再通過SQL語句生成數據適配器對象oAdp;再通過oAdp的Fill方法把獲得數據填充到數據集對象oDtSt的table表(自動產生)中。***返回table表的默認視圖DefaultView。

為了生成我們期望的名字為myClass.dll的組件文件,必須點擊菜單“項目”\“ClassLibrary1屬性”,在彈出的屬性頁對話框中,把“程序集名稱”的值修改為“myClass”,確定后關閉屬性頁對話框窗口。然后執行“運行”菜單下的“生成ClassLibrary1”命令。這時就在“我的文檔”\Visual Studio Projects\bin\Debug 下生成一個myClass.dll文件,就是我們即將使用的數據庫存取組件。

2.組件的部署

為了測試我們生成的組件,可以再另外建立一個“ASP.NET Web應用程序”項目,假設項目名為WebApplication2,這樣會在IIS里生成一個WebApplication2虛擬路徑,同時在默認網站下生成一個WebApplication2文件夾。我們即將測試的組件就要拷貝到WebApplication2下的bin文件夾下。這樣組件就部署完畢了。

3.ASP.NET 的測試代碼

在生成的WebApplication2項目的WebForm上拖放一個DataGrid組件,在工程中添加對myClass.dll組件的引用,再在文件頭部引用我們的命名空間:

using myDB;

然后在WebForm1.aspx.cs的Page_Load事件中鍵入以下代碼:

private void Page_Load(object sender, System.EventArgs e) 
  {   myDbLink oDbTable;  
    oDbTable = new myDbLink();  
    oDbTable.sDbPath = "D:\\_My_Documents\\database.mdb"; 
    oDbTable.sPassword = ""; 
  oDbTable.sDbTable = "myTab"; // myTab是數據庫中的表  
  DataGrid1.DataSource = oDbTable.getData();  
  DataGrid1.DataBind();  
  }

由于把從數據庫中取出來的表視圖作為DataGrid1的數據源與DataGrid1綁定,所以運行WebApplication2項目后,DataGrid1中就顯示出表myTab中的數據。

【編輯推薦】

  1. 引以為戒 .NET開發者常犯的錯誤
  2. VB.NET和C#逐層橫向對比
  3. .NET平臺下Web測試工具橫向比較
責任編輯:彭凡 來源: IT168
相關推薦

2009-12-16 10:23:13

VS.NET

2009-12-10 14:30:50

VS.NET 2003

2009-12-02 14:54:20

VS.NET 2010

2009-12-10 16:00:04

VS.NET 2003

2009-12-09 10:56:53

MS VS.NET 2

2009-12-09 14:38:26

VS.NET 2003

2009-12-10 11:29:22

VS.NET 2003

2009-12-15 17:02:29

Vs.Net 2010

2009-09-02 18:28:55

.NET框架ESBasic

2010-05-20 14:52:42

MySQL數據庫

2009-12-09 16:43:48

VS.NET 2003

2009-12-02 15:11:04

Vs.Net 2010

2011-08-31 17:58:00

VS.netLUA開發環境

2009-12-10 09:50:49

VS.NET 2003

2009-12-15 13:19:04

Vs.Net 2010

2011-03-04 11:08:46

ADO.NET數據庫

2009-07-24 15:35:00

ASP.NET連接Or

2009-12-22 13:34:48

ADO.Net Tea

2009-12-24 15:11:47

ADO.NET數據庫連

2009-12-28 10:09:10

ADO.NET連接
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品永久久久久 | 成年网站在线观看 | 老子午夜影院 | 亚洲视频三区 | 国产在线一区二区 | 九七午夜剧场福利写真 | 精品无码久久久久国产 | 欧美 日韩 国产 成人 在线 91 | 成人av免费网站 | 久久精品免费一区二区三 | 国产视频观看 | 成人做爰69片免费观看 | 精品国产乱码久久久久久蜜柚 | 日本一级淫片免费啪啪3 | 国产视频福利一区 | 99精品视频一区二区三区 | 亚洲一区 | 999精品在线观看 | 亚洲视频在线观看免费 | 日韩高清一区 | 日本欧美国产在线观看 | 福利久久| 欧美日韩淫片 | 成人不卡| 天堂色综合 | 精品久 | 欧洲在线视频 | 九色 在线 | 国产成人综合一区二区三区 | 亚洲精品久久久久中文字幕欢迎你 | 午夜手机在线视频 | 国产精品污www在线观看 | av在线免费观看网站 | 国产精品免费看 | 欧美视频在线免费 | 久久另类视频 | 在线视频a | 一区二区视频在线 | 亚洲精品久久久久久下一站 | 91久久久精品国产一区二区蜜臀 | 中文字幕福利视频 |