曹亮
(哈爾濱市南崗房產(chǎn)經(jīng)營公司,黑龍江 哈爾濱150001)
.NET是微軟公司推出的一種全新的計(jì)算平臺(tái),它包含了對下一代信息技術(shù)理念的描述。.NET描述的具體服務(wù)和技術(shù),由.NET框架來提供。.NET框架是一個(gè)多語言組件開發(fā)和執(zhí)行環(huán)境,它提供了一個(gè)跨語言的統(tǒng)一編程環(huán)境。運(yùn)用.NET框架可以使開發(fā)人員更容易的研發(fā)WEB應(yīng)用程序,使Internet上的各應(yīng)用程序之間可以更方便的運(yùn)用WEB服務(wù)進(jìn)行溝通。
.NET提供了兩種重要的技術(shù),即ASP.NET網(wǎng)絡(luò)應(yīng)用程序開發(fā)技術(shù)和ADO.NET數(shù)據(jù)庫訪問技術(shù)。
1.1 ASP.NET網(wǎng)絡(luò)應(yīng)用程序開發(fā)技術(shù)
1.1.1 關(guān)于ASP.NET
ASP.NET是一種建立在通用語言上的程序架構(gòu),能被用于在一臺(tái)Web服務(wù)器上來建立強(qiáng)大的Web應(yīng)用程序。ASP.NET提供許多比現(xiàn)在的Web開發(fā)模式強(qiáng)大的優(yōu)勢。ASP.NET可以實(shí)現(xiàn)程序在服務(wù)器端首次運(yùn)行時(shí)即對其進(jìn)行編譯,這種機(jī)制可有效的節(jié)省運(yùn)行時(shí)間,提高程序執(zhí)行效率。
1.1.2 ASP.NET的安全性
隨著信息技術(shù)和網(wǎng)絡(luò)技術(shù)的發(fā)展,B/S結(jié)構(gòu)逐漸取代了傳統(tǒng)的C/S結(jié)構(gòu),成為了主流結(jié)構(gòu)。B/S結(jié)構(gòu)是一種以HTTP為傳輸結(jié)構(gòu),使客戶端通過瀏覽器訪問Web服務(wù)器以及與之相連的后臺(tái)數(shù)據(jù)庫的體系結(jié)構(gòu)。B/S具有良好的跨平臺(tái)性、可擴(kuò)展性和更容易更新升級(jí)等優(yōu)點(diǎn)。ASP.NET采用B/S的三層架構(gòu)。三層分別是顯示層、中間層、數(shù)據(jù)層。顯示層是利用瀏覽器為客戶提供應(yīng)用服務(wù)的圖形界面,負(fù)責(zé)直接跟用戶進(jìn)行交互。中間層位于顯示層和數(shù)據(jù)層之間,由研發(fā)的應(yīng)用程序?qū)崿F(xiàn)系統(tǒng)的業(yè)務(wù)邏輯功能。數(shù)據(jù)層是三層中的最底層,負(fù)責(zé)數(shù)據(jù)的存儲(chǔ)和訪問。三層架構(gòu)的運(yùn)用實(shí)現(xiàn)了頁面、程序、數(shù)據(jù)的分離,減少了耦合度。極大的降低了客戶端被破壞而給數(shù)據(jù)庫帶來損失的風(fēng)險(xiǎn),有效的保證了系統(tǒng)的安全。
1.1.3 ASP.NET的重要服務(wù)器端控件
1)Repeater控件
Repeater控件是一個(gè)基本的數(shù)據(jù)綁定模板控件,它以沒有預(yù)定義外觀的方式顯示數(shù)據(jù)源的內(nèi)容,使用時(shí)必須在Repeater控件所應(yīng)用的模板內(nèi)顯示聲明所有的HTML布局、格式設(shè)置和樣式標(biāo)記,以此來實(shí)現(xiàn)界面的可視化。
2)DataList控件
DataList控件是一種數(shù)據(jù)列表控件,它是一個(gè)強(qiáng)大的數(shù)據(jù)綁定控件,相比Repeater控件,DataList控件增加了選擇和編輯兩種專用模板,其中選擇模板可用來呈現(xiàn)被選中項(xiàng)的樣式;編輯模板則可以實(shí)現(xiàn)對該模板中控件內(nèi)容或數(shù)據(jù)進(jìn)行編輯的功能。
3)DataGrid控件
DataGrid控件是一種服務(wù)器端控件,能以表格的方式顯示數(shù)據(jù)源中的數(shù)據(jù)。它提供了諸如分頁、排序以及過濾等一系列的內(nèi)置功能,極大的簡化了Web應(yīng)用程序的開發(fā)過程。該控件把綁定到它們的數(shù)據(jù)通過HTML表現(xiàn)出來,同時(shí)該控件還封裝了處理提交數(shù)據(jù)、狀態(tài)管理和事件激發(fā)的功能。
應(yīng)用ASP.NET中的服務(wù)器端控件顯示數(shù)據(jù)時(shí),均需調(diào)用DataBind使數(shù)據(jù)源的數(shù)據(jù)顯示在列表中,綁定后只要程序中相應(yīng)的數(shù)據(jù)發(fā)生變化,那么這些與數(shù)據(jù)“綁定”在一起的屬性、表達(dá)式以及函數(shù)結(jié)果的值就會(huì)隨之改變。
1.2 ADO.NET數(shù)據(jù)庫訪問技術(shù)
1.2.1 關(guān)于ADO.NET
ADO.NET是微軟公司推出的.NET框架提供的一種新的數(shù)據(jù)訪問技術(shù),用于直接滿足用戶開發(fā)可伸縮的應(yīng)用程序,它是專門為Web設(shè)計(jì)的,提供了優(yōu)秀的平臺(tái)互用性和可伸縮數(shù)據(jù)訪問,ADO.NET可以使應(yīng)用程序和不同類型的數(shù)據(jù)庫進(jìn)行交互。
1.2.2 ADO.NET提供了五種重要對象,它們分別是:
1)Connection連接對象:用于建立一個(gè)連接,研發(fā)的應(yīng)用程序可以通過此連接把對數(shù)據(jù)的操作命令傳送到數(shù)據(jù)庫。
2)Command數(shù)據(jù)命令對象:用于對數(shù)據(jù)庫發(fā)出SQL命令,對數(shù)據(jù)庫中的數(shù)據(jù)執(zhí)行“查詢”、“增”、“刪”、“改”等操作。
3)DataReader數(shù)據(jù)閱讀器對象:用于從SQLServer數(shù)據(jù)源中以快速的、向前的、只讀的方式訪問數(shù)據(jù)庫,在讀取數(shù)據(jù)時(shí),不允許斷開和數(shù)據(jù)庫之間的連接。
4)DataSet數(shù)據(jù)集對象:可以將其看成內(nèi)存中的數(shù)據(jù)庫,DataSet可以把從數(shù)據(jù)源中檢索到的數(shù)據(jù)整體存放到內(nèi)存中,然后斷開與數(shù)據(jù)源的連接,之后接受調(diào)用應(yīng)用程序的訪問,所以應(yīng)用DataSet可實(shí)現(xiàn)無需持續(xù)連接數(shù)據(jù)源即可高效的對數(shù)據(jù)進(jìn)行訪問。
5)DataAdapter數(shù)據(jù)適配器對象:它負(fù)責(zé)接收來自Connection對象的數(shù)據(jù),然后把它傳給DataSet數(shù)據(jù)集,而數(shù)據(jù)集的任何變化也是通過數(shù)據(jù)適配器回傳給Connection對象并改變數(shù)據(jù)源的數(shù)據(jù)。
2.1 在登錄模塊中的應(yīng)用
2.1.1 應(yīng)用Connection連接對象,建立前臺(tái)界面與數(shù)據(jù)源的連接。
SqlConnection myConnection=new Sql-Connection(DataBaseDB.ConnectionString);
2.1.2 建立Command數(shù)據(jù)命令對象,通過從Users(用戶)表中查詢是否有與輸入的用戶名和密碼相同的信息,來驗(yàn)證用戶輸入的用戶名和密碼是否可以用來登錄系統(tǒng)。
String cmdText=“select*from Users WHERE UserName='”+UserName.Text.Trim()+“'AND
Password='”+Password.Text.Trim()+“'”;
SqlCommand myCommand=new SqlCommand(cmdText,myConnection);
myConnection.Open();
2.1.3 建立DataReader數(shù)據(jù)閱讀器對象,并將可能采集到的信息,添加到DataReader數(shù)據(jù)閱讀器對象。
SqlDataReader recu=myCommand.ExecuteReader(CommandBehavior.CloseConnection);if(recu.Read()){if(recu[“UserID”].ToString().Length>0)
2.1.4 如果有數(shù)據(jù)被添加到了DataReader對象,則使用Session對象分別保存。
{Session[“UserID”]=recu[“UserID”].ToString();
Session[“realname”]=recu[“realname”].ToString();
}}
2.2 在信息標(biāo)題顯示模塊中的應(yīng)用
分別建立DataAdapter數(shù)據(jù)適配器對象和DataSet數(shù)據(jù)集對象,然后將查詢到的記錄,通過數(shù)據(jù)適配器添加到數(shù)據(jù)集的數(shù)據(jù)表中,再將數(shù)據(jù)表中的數(shù)據(jù)作為數(shù)據(jù)源,綁定到Datagrid控件,即可實(shí)現(xiàn)在頁面中運(yùn)用Datagrid控件顯示相關(guān)數(shù)據(jù)。
SqlDataAdapter xinxi3=new SqlDataAd apter(cmdText3,myConnection);
DataSet ds=new DataSet();
xinxi3.Fill(ds,“xinxi”);
Datagrid1.DataSource=ds.Tables[“xinxi”].DefaultView;
Datagrid1.DataBind();}
在高速發(fā)展的信息技術(shù)和網(wǎng)絡(luò)技術(shù)的推動(dòng)下,企業(yè)的辦公方式發(fā)生了重大轉(zhuǎn)變,實(shí)施信息工程,進(jìn)行信息化建設(shè)是現(xiàn)代企業(yè)發(fā)展的大勢所趨,辦公自動(dòng)化系統(tǒng)是企業(yè)信息工程建設(shè)項(xiàng)目的重要組成部分,它的應(yīng)用已成為大幅提高辦公效率,降低企業(yè)管理成本的關(guān)鍵。辦公自動(dòng)化系統(tǒng)作為典型的WEB應(yīng)用系統(tǒng),性能和安全性是十分重要的。從.NET技術(shù)的特點(diǎn)和工作原理來分析,.NET提供了若干新的安全機(jī)制、新的數(shù)據(jù)庫訪問機(jī)制、新的運(yùn)行策略和新的編程方式,將這些新的理念和方法合理的應(yīng)用到WEB應(yīng)用系統(tǒng)的開發(fā)中,可以極大的提高Web應(yīng)用程序的安全性和工作效率,可以開發(fā)出功能較多的較復(fù)雜的WEB應(yīng)用系統(tǒng)。
[1]金茂忠.NET編程基礎(chǔ).北京:中央廣播電視大學(xué)出版社,2004.
[2]曹祖圣.Visual C#.NET程序設(shè)計(jì)經(jīng)典.北京:科學(xué)出版社,2004.