动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > ASP教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ ASP教程 ]的信息

本月文章推荐
.ASP进阶学习必经之认识数学函数1.
.亲密接触ASP.Net(3).
.在ADO使用SELECT语法二.
.利 用 ISAPI 实 现 向 数 据 库 .
.ASP 3.0高级编程(二).
.ASP讲座之四:ASP内置组件.
.怎么学习asp 给非专业的asp爱好者.
.SQL数据操作基础(初级) 1.
.ASP 3.0高级编程(二十六).
.亲密接触ASP.Net(4).
.ASP系列讲座(二)ASP 的新功能.
.ASP 3.0高级编程(三十七).
..NET之ASP WebApplication快速入.
.XML DOM介绍和例子(三).
.ASP.NET 入门的五个步骤.
.ASP进阶教程Ⅵ:留言簿在线删除留.
.亲密接触ASP.Net(15).
.浅析ASP内置组件.
.ASP 3.0高级编程(四).
.ASP进阶教程Ⅰ:循序渐进学留言薄.

从ASP迁移至ASP+

发表日期:2000-11-14 |


它包括运行平台的配置,pagelet的建立,新的ADO+的使用,如何使用新的DataSet进行数据访问,HTML表格到DataList的转变,以及其他多种新的服务器端控件的使用技巧……还等什么?现在就来感受一下ASP+的全新魅力吧!)

   自从微软在2000年7月的专业开发人员会议上宣布了ASP+以来, 一个相同的问题一直困扰着许多新闻组及讨论论坛:“我需要怎样做以使现有的web应用程序从ASP转换成asp+?” 专业开发人员会议的发言人称:代码方面无须作较大改动,整个转换过程也并不太难。真是这样吗?在本文中,我们将一探究竟。

   要运行ASP+的alpha版本,你需要:

   Windows 2000 Professional server, 或者Advanced Server

   IIS5.0

   Internet Explorer5.5

   ..Net框架运行时(.Net Framwork Runtime)

   (未来发行的ASP+将可以在windows NT及9x上运行)

   如果你是一位ASP开发者,你当前使用的技巧如VBScript将轻松转换到Visual Basic .Net来为你的ASP+页面

   编写代码。你也可能使用其他的语言如:C#,Managed C++甚至Cobol。 在本文中,我会介绍将一个小型web应用程序从ASP升级到ASP+所需的详细步骤。示例代码使用Visual Basic .Net。

   尽管ASP与ASP+可以彼此交互共存,我们还是选择将整个站点迁移至ASP+。被迁移的是一个示例站点,该站点被用来演示入门级的web开发 。我们觉得该站点代表了当前互联网上相当一部分典型的中,小型站点。该站点网址是: http://www.codejunkies.net/eVille/, 它是一个虚拟招生网站, 招收的学生们将学习IT相关课程。该站点架设于Windows2000 Server上,由Access2000数据库驱动,使用VBScript, 客户端JavaScript以及ASP3.0,没有使用COM。

   在同一台运行IIS5.0的WEB服务器上,ASP与ASP+被设计成为支持并行运行(最终发行版本将支持IIS其它版本)。这意味着我们可以一次一页地来迁移整个站点。最初的页面仍然可以在ASP3.0下继续运行,而新的页面将被转换成为使用ASP+服务器控件与函数。

   我们要做的第一步就是要使IIS能够将default.aspx作为一个有效的缺省文件。这一步相当简单,在Internet Service Manager中:

   * 打开IIS虚拟目录中的‘属性’对话框

   * 点击‘文件’标签中的‘添加’按钮

   * 输入Default.aspx

   * 点击‘确定’两次

   做示例用的eVille站点没有使用COM,因此所有的数据访问都是通过ASP或者include文件中的ADO来完成的。我们初始的目标之一就是要将ADO转换成ADO+以获得由ADO+ Managed Provider带来的更好执行效果。ASP+支持传统ADO的使用,然而迁移到ADO+将受益更多。比方说:从单个DataSet中获取多个表(table),更快的执行速度,将数据绑定到服务器控件。ASP+页面中的数据访问可以通过ADO,ADO+或是SQL Managed Provider来完成。由于示例站点没有使用SQL Server,而我们又想对执行进行优化,所以ADO+成了我们最好的选择。

   本站的每个页面都涉及到数据访问,所以它将在转换工程中占最大的比例。基本上,每一页都必须作一些代码修改以获取并显示该页所需的数据。在eVille的结构中有一个connect.inc文件,该文件包含ADO连接代码,并且每个页面中都有该文件。连接已经建好并且可以使用了。由于在ASP+中,连接到数据库和绑定到ASP+数据控件的过程由新的Page_Load事件来完成,现在我们得采取一种稍微不同的方法。


最初的考虑(二)
作 者 : 雨晨                               


   运用和在一个单独模块中创建一个普遍性的连接相同的构想,我们创建了一个Pagelet。Pagelet使开发人员可以创建伪控件,伪控件和对象一样可以用来显示属性,方法以及事件。我们的方案是:创建一个显示ConnectToDB方法的Pagelet,该方法返回一个ADOConnection对象(与ADO的语法稍有不同)。我们用下面的代码创建Pagelet,将它存为connect.aspc(扩展名表明它是一个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>

   你会注意到我们导入了两个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="_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="_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语句在转换后没有什么改变。然而正如你所看到的,创建记录集的结构发生了改变,我们使用的是ADODataSetCommand和DataSet。

上一篇:asp+语法教程(六)数据库篇 人气:14806
下一篇:从ASP迁移至ASP+ --进入DataSet 人气:12028
浏览全部的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-11-18 bbclone v0.4.9c 多国语言版
2008-11-18 雪晖在线投票系统 (asp) Build 2
2008-11-18 Piwik ( PHP统计系统,可以和GOOG
2008-11-18 SonsinCMS v1.0 bulid 081117
2008-11-18 局域网影视系统 v3.0
2008-11-18 麦布自动链 v1.0
2008-11-18 HiASPCMS 内容管理系统 v0.05
2008-11-18 仿百度留言簿控件 v1.0
2008-11-18 Btplus v0.1 FOR 马克斯1.5
2008-11-15 BitTorrent 6.1.2 Build 13185
2008-11-15 BitComet 1.06
2008-11-15 SpeedFan 4.36 Final
2008-11-15 Windows Installer CleanUp Util
2008-11-15 Safari 3.2
2008-11-15 RealPlayer 11.0.0.835 简体中文
2008-11-15 QQ for Mac Preview 3 Build 394
2008-11-15 Vista优化大师3.20
2008-11-15 酷点 CoolDock 0.6
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | js/vbs加密 | md5加密 | 进制转换 | UTF-8 转换工具 | Html转换js | Html转换asp | Html转换php | Html转换perl
实用工具:汉字翻译拼音 | 拼音字典 | 符号对照表 | 个税计算 | 实时汇率查询换算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 | 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵
SEO対策 中国語教室 ホームページ作成