从ASP迁移至ASP+--最初的考虑(二)
2008-06-26 02:04:23来源: 阅读 ()
< %@ 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>
你会注意到我们导入了两个Namespaces,即System.Data和System.Data.ADO。为了使用ADO+ Managed Provider这些Namespaces是必须的。许多人就此问了我许多问题,因为目前多数示例都使用基于Microsoft SQL Server 2000数据库的SQL Managed Provider。对于非SQL Server 数据库,ASP+可以使用ADO+ Managed Provider,这和目前你在程序中使用ADO的方式大致相同。导入Namespaces和在VB程序中创建参考(Reference)有异曲同工之妙。
Pagelet的运用使我可以维护当前的站点计划,一旦在模块中创建了连接,我们就可在任何需要的地方重用模块。这意味着我们需要用Pagelet的一个实例来替代Include文件指令,然后当我们需要数据库连接时调用ConnectToDB方法。在需要使用Pagelet的页面中,我们首先必须使用ASP+指令将之与该页面注册(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" %>
放置我们刚注册的Pagelet的方法与ASP+服务器控件类似:
< [TagPrefix]:[TagName] id=myPagelet runat=server />
比如:
< seven:Connect id=Connect runat=server />
在ADO+中,记录集(Recordset)的概念被DataSets和DataViews的组合所取代。一会儿我们将讨论这两个概念。首先让我们看看在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>
数据访问的核心,ANSI-SQL语句在转换后没有什么
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:ASP+与ASP有什么不同
下一篇:走近asp.net
- asp中设置session过期时间方法总结 2020-03-30
- asp中日期时间函数介绍 2020-03-30
- asp教程中get post提交表单有5点区别 2020-03-30
- ASP 时间函数及如何获取服务器时间的写法 2020-03-30
- asp中的ckEditor的详细配置小结 2020-03-30
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash