将 ASP 转换为 ASP.NET
升级至 Microsoft .NET
本文将先从解释典型数据驱动的 ASP 应用程序开始,再接下来讨论将 ASP 应用程序移植到 ASP.NET
目标
· 将 ASP 及 Microsoft ASP.NET 执行在相同的网页服务器上
· 分析一般的 ASP 应用程序
· 将 ASP 应用程序移植至 ASP.NET
前提
您应该具备下列特质以完全了解这篇文章:
· 熟悉 Microsoft® Visual Basic® 程序设计概念和术语。
· 熟悉 ASP
内容
将 ASP 及 ASP.NET 执行在相同的网页服务器上
分析 ASP 范例应用程序
将 ASP 应用程序移植至 ASP.NET
总结
当使用 ASP.NET 时可能会注意到的第一件事就是新的扩展名:ASP.NET 网页使用 .aspx,相对于 ASP 使用 .asp 作为其扩展名。另外,当要求 ASP.NET 网页时,IIS 将该要求递交给 aspnet_wp.exe 处理序;而 ASP 则使用 asp.dll。
ASP 及 ASP.NET 可同时用于相同的网页服务器上。也就是说,站台中的网站或 Web 应用程序可同时包含 ASP.NET 网页和 ASP 网页。由于 ASP 和 ASP.NET 网页可同时从相同的网页服务器存取,所以并不需要将现有的 ASP 网页移植到 ASP.NET 相容的页面。然而,将应用程序从 ASP 移植至 ASP.NET 有许多好处。其中一些最大的优点包括:
· 提高效能:Microsoft 的测试显示 ASP.NET 应用程序每秒可处理的要求量约为传统 ASP 应用程序两到三倍。
· 加强稳定性:ASP.NET 执行阶段将严格监视并管理各处理序,以便在其中一个处理序发生不当行为 (遗漏、死锁) 时,可建立新的处理序并马上取代,这可帮助您的应用程序经常保持其可用状态以处理要求。
· 提高开发人员产能:ASP.NET 中的新功能,如服务器控件和事件处理,可帮助开发人员更快并以更少的程序代码建置应用程序。将程序代码从 HTML 内容抽离也比以往更容易许多。
不幸的是,将现有的 ASP 网页移植至 ASP.NET 网页几乎不可能像将扩展名从 .asp 改成 .aspx 那么简单,再加上其它一些因素,Microsoft Visual Basic Scripting Edition (VBScript) 与 Visual Basic .NET 之间有着极大的差异。好消息是多数必要的变更都是有句法且自动化的。使用 COM 组件 (如 ADO 或您撰写完成的自订 COM 组件) 的 Visual Basic .NET 程序代码实际上可保留现状;而 C# 程序代码就需要一些额外的程序代码来处理 COM 组件,不过这已超出本文的范围。
本文分成两个部份,先从解释典型数据驱动的 ASP 应用程序开始。在稍后的部份,会大致浏览将 ASP 应用程序移植到 ASP.NET 的过程。
附注 本文把重点放在以尽可能少的原始 ASP 程序代码变更,而将 ASP 应用程序移植至 ASP.NET;它并不会探讨从头开始重新建置 ASP 应用程序,使用 ASP.NET 中的新功能等。
在这里将使用某一虚构公司的 Project Report Application 作为移植至 ASP.NET 的 ASP 范例应用程序。这个应用程序会以VBScript撰写。这种典型的应用程序会显示进行中和过去项目的相关信息,让使用者在 Project Report 画面指定某些需求。
此 ASP 应用程序属数据驱动 (data-driven),即项目信息是储存在数据库中;具体来说,会用到两个数据库数据表:Project 和 Department。Department 数据表中包含公司中每个部门的相关信息,而