六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

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

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

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

(一)組件的創建

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




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

using System;

namespace ClassLibrary1

{

/// <summary>

/// Class1 的摘要說明。

/// </summary>

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文件,就是我們即將使用的數據庫存取組件。



(二)組件的部署

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



(三)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中的數據。




主站蜘蛛池模板: 亚洲精品第四页中文字幕 | 日韩a| 亚洲乱码中文字幕久久 | 日本大蕉香蕉大视频在线观看 | 日本a在线视频 | 日韩一区二区三区四区不卡 | 天堂欧美| 日韩在线免费看网站 | 亚洲欧美在线视频 | 午夜激情视频 | 宅男午夜视频在线观看 | 日韩伦理一区二区三区 | 午夜丁香影院 | 日韩3级| 日本三级香港三级国产三级 | 天天干天天上 | 最新中文字幕一区 | 亚洲精品第四页中文字幕 | 在线免费视频一区二区 | 亚洲欧美日韩一区高清中文字幕 | 日韩视频在线播放 | 天天做天天爱夜夜爽女人爽宅 | 亚洲 欧美 日韩在线综合福利 | 亚洲国产一区二区三区最新 | 亚洲一区二区三区高清视频 | 青草草产国视频 | 日韩三级在线 | 日本乱中文字幕系列在线观看 | 欧美一级特黄aaaaaa在线看首页 | 日韩中文字幕高清在线专区 | 亚洲一区二区三区免费视频 | 在线免费观看h视频 | 亚洲综合自拍 | 欧美午夜在线视频 | 亚洲 另类 在线 欧美 制服 | 伊人免费在线 | 四虎在线精品免费高清在线 | 青草视频免费 | 我在修仙世界朝九晚五漫画免费观看 | 唐朝豪放女在线观看 | 一级女性全黄久久生活片 |