日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

從ASP遷移至ASP --最初的考慮(二)_ASP教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:如何實(shí)現(xiàn)Asp與Asp.Net共享Session
在.net中,Session的存儲(chǔ)機(jī)制已經(jīng)與Asp的存儲(chǔ)機(jī)制不一樣,雖然可以在同一個(gè)IIS下同時(shí)運(yùn)行asp與aspx,但是它們之間不能傳遞Session。之前大批系統(tǒng)應(yīng)用到了asp,在升級(jí)過程中,如果完全拋棄asp來

運(yùn)用和在一個(gè)單獨(dú)模塊中創(chuàng)建一個(gè)普遍性的連接相同的構(gòu)想,我們創(chuàng)建了一個(gè)Pagelet。Pagelet使開發(fā)人員可以創(chuàng)建偽控件,偽控件和對(duì)象一樣可以用來顯示屬性,方法以及事件。我們的方案是:創(chuàng)建一個(gè)顯示ConnectToDB方法的Pagelet,該方法返回一個(gè)ADOConnection對(duì)象(與ADO的語法稍有不同)。我們用下面的代碼創(chuàng)建Pagelet,將它存為connect.aspc(擴(kuò)展名表明它是一個(gè)Pagelet)

   < %@ Import Namespace="System.Data" %>

   < %@ Import Namespace="System.Data.ADO" %>

   < script language="VB" runat="server">

   Public Function ConnectToDB() As ADOConnection

   ConnectToDB = New ADOConnection("DSN=evilleDSN")

   End Function

   < /script>

你會(huì)注意到我們導(dǎo)入了兩個(gè)Namespaces,即System.Data和System.Data.ADO。為了使用ADO Managed Provider這些Namespaces是必須的。許多人就此問了我許多問題,因?yàn)槟壳岸鄶?shù)示例都使用基于Microsoft SQL Server 2000數(shù)據(jù)庫的SQL Managed Provider。對(duì)于非SQL Server 數(shù)據(jù)庫,ASP 可以使用ADO Managed Provider,這和目前你在程序中使用ADO的方式大致相同。導(dǎo)入Namespaces和在VB程序中創(chuàng)建參考(Reference)有異曲同工之妙。

Pagelet的運(yùn)用使我可以維護(hù)當(dāng)前的站點(diǎn)計(jì)劃,一旦在模塊中創(chuàng)建了連接,我們就可在任何需要的地方重用模塊。這意味著我們需要用Pagelet的一個(gè)實(shí)例來替代Include文件指令,然后當(dāng)我們需要數(shù)據(jù)庫連接時(shí)調(diào)用ConnectToDB方法。在需要使用Pagelet的頁面中,我們首先必須使用ASP 指令將之與該頁面注冊(cè)(register)。在指令中,我們定義TagPrefix,TagName,以及Source(src)。與ASP中的include文件類似,在我們放置Pagelet的地方要用到TagPrefix和TagName。

   < %@ Register TagPrefix="seven" TagName="Connect"

   src=http://www.alixixi.com/Dev/Web/ASP/asp_1/2007/"_includes/connect.aspc" %>

放置我們剛注冊(cè)的Pagelet的方法與ASP 服務(wù)器控件類似:

   < [TagPrefix]:[TagName] id=myPagelet runat=server />

比如:

   < seven:Connect id=Connect runat=server />

在ADO 中,記錄集(Recordset)的概念被DataSets和DataViews的組合所取代。一會(huì)兒我們將討論這兩個(gè)概念。首先讓我們看看在default.asp頁面遷移至default.aspx(ASP 頁面的后綴)后代碼都有了哪些改變。先看default.asp:

   < !-- #include file="_includes/connect.inc" -->

   < %

   Dim cnEville_DB, rsUpcoming, strSqlUpcoming

   Set rsUpcoming = Server.CreateObject("ADODB.Recordset")

   strSqlUpcoming = " SELECT TOP 2 " & _

   "Classes.Title, Sessions.Session_ID, " & _

   "Sessions.Special, Classes.Description " & _

   "FROM Classes INNER JOIN Sessions ON " & _

   "Classes.Class_ID = Sessions.ClassID " & _

   "WHERE (((Sessions.Date)>Date())) " & _

   "ORDER BY Sessions.Date"

   rsUpcoming.Open strSqlUpcoming,cnEville_DB

   %>

   在ASP 中成了default.aspx:

   < %@ Import Namespace="System.Data" %>

   < %@ Import Namespace="System.Data.ADO" %>

   < %@ Register TagPrefix="seven" TagName="Connect" &_

   src=http://www.alixixi.com/Dev/Web/ASP/asp_1/2007/"_includes/connect.aspc" %>

   < script language="vb" runat=server>

   Sub Page_Load(Source As Object, E As EventArgs)

   Dim dscUpcoming As ADODataSetCommand

   Dim dsUpcoming As New DataSet

   Dim strSQL As String

   strSQL = "SELECT TOP 2 Classes.Title," & _

   "Sessions.Session_ID, Classes.Description " & _

   "FROM Classes INNER JOIN Sessions ON " & _

   "Classes.Class_ID = Sessions.ClassID " & _

   "WHERE (((Sessions.Date)>Date())) " & _

   "ORDER BY Sessions.Date"

   dscUpcoming = New ADODataSetCommand(strSQL, Connect.ConnectToDB())

   dscUpcoming.FillDataSet(dsUpcoming, "Upcoming")

   End Sub

   < /script>

數(shù)據(jù)訪問的核心,ANSI-SQL語句在轉(zhuǎn)換后沒有什么

分享:ASP.NET2.0的控件狀態(tài)和視圖狀態(tài)探討
基本概念 控件狀態(tài)-為了讓控件正常工作,有時(shí)需要存儲(chǔ)控件狀態(tài)數(shù)據(jù)。例如,如果編寫了一個(gè)自定義控件,其中具有顯示不同信息的不同選項(xiàng)卡,為使該控件如預(yù)期一樣工作,控件需要知道在往返過

來源:模板無憂//所屬分類:ASP教程/更新時(shí)間:2008-08-22
相關(guān)ASP教程