2007-10-16

ASP向ASP.AET 环境迁移需要考虑的问题

来源: 本站收集整理 作者: 评论 0 条
 

正如您所见,对于涉及到的所有方法,其变化基本上都相同。

假如访问的 item(项)只包含特定要害字的一个值,您将不必修改自己的代码。但是,假如给定的要害字具有多个值,您将需要使用其它方法返回值的集合。另请注重,Visual Basic .NET 中的集合都是基于 0,而 VBScript 中的集合是基于 1 的。

例如,在 ASP 中,将按下列方式访问 http://localhost/myweb/valuetest.asp?values=10&values=20 请求返回的各个查询字符串值:

在 ASP .NET 中,QueryString 属性返回 NameValueCollection 对象,在检索所需的实际项之前,将需要从该对象中检索 Values 集合。另外需要注重,集合中的第一项是使用 0 而非 1 索引进行检索的:

下列代码在 ASP 和 ASP .NET 中的运行结果相同:

结构变化

结构变化将影响 Active Server Pages 的布局和编码样式。您需要了解其中的一些信息,以确保您的代码能够在 ASP .NET 中运行。

代码块:声明函数和变量

在 ASP 中,可以在代码分隔符之间声明子程序和全局变量。

在 ASP .NET 中,不答应以这种方式进行声明。您必须在

混合编程语言

在 ASP 中,基本上有两种编程语言供您选择:VBScript 或 Microsoft® JScript®。在同一网页中,您可以随意组合和匹配各种脚本块。

在 ASP .NET 中,目前有三种语言可供您选择:C#、Visual Basic .NET 或 JScript。注重,我说的是 Visual Basic .NET,而不是 VBScript。这是因为 .NET 平台上不存在 VBScript,它已被完全集成到 Visual Basic .NET 中。虽然可以自由选择其中的任意一种语言,但需要注重的是,您不能像在 ASP 中那样在同一网页中使用多种语言。您的确可以在同一个应用程序的 Page1.aspx 中使用 C# 代码,而在 Page2.aspx 中使用 Visual Basic .NET 代码,只是您不能在同一页中混用它们。

新增的 Page 指令

在 ASP 中,必须将所有指令置于网页中同一分隔块内的第一行。例如:

在 ASP .NET 中,需要将 Language 指令替换为 Page 指令,如下所示:

可以根据需要包含任意多行指令。指令可以位于 .apsx 文件中的任意位置,但标准做法是将其置于文件的最开头。

在 ASP .NET 中新增了几个指令。我鼓励您在 ASP .NET 文档中查看一下这些指令,了解它们可以为您的应用程序带来什么样的好处。

生成函数不再有效

开发者指出,在 ASP 中,他们可以使用“生成函数”灵活处理一些问题。“生成函数”基本上是一个子程序,在其主体中嵌入了大量 HTML。例如:

这是正在生成的 HTML 文本。


虽然使用这类函数能够实现非常酷的功能,但 ASP .NET 中不答应使用这类编码。这可能是出于优化性能的考虑。我想您肯定碰到过,像这样将代码与 HTML 混在一起时,有些函数很快就变得可读性极差,而且难以治理。在 ASP .NET 中,实现此目的的最简单方法是调用 Response.Write 来代替 HTML 输出,如下所示:

注重,我说的是“最简单的方法”,但并不一定表示是最佳方法。根据生成代码的复杂程度和数量,使用自定义 Web 控件效果可能更好,这种控件答应您通过编程设置 HTML 属性,并将代码与内容真正分开,使代码可读性更强。

Visual Basic 语言的变化


正如我前面提到过的,VBScript 已集成到了更完整、功能更强大的 Visual Basic .NET 中。这一节,我将重点讲述您可能会碰到的与 Visual Basic 语言变化有关的一些问题。但需注重,这并不是详尽的 Visual Basic 变化列表。我只是着重讲述作为一名 ASP/VBScript 程序员,在使用 Visual Basic .NET 向 ASP .NET 迁移时可能会碰到的一些问题。有关所有语言变化的详尽列表,请参见 Visual Basic .NET 文档。
共7页: 上一页 [1] 2 [3] [4] [5] [6] [7] 下一页

(本文仅表明作者个人观点,不代表本站及其管理员立场.) 推荐 收藏 投稿 打印 返回 关闭
上一篇:ASP.Net缓存系统几点提示  
下一篇:ASP.NET热点问题解答14个
    评论加载中…
 推荐文章
     

网站首页  -  网站地图 -   站长论坛  -  网站投稿  -    -  网站管理
Copyright © 2008 芜湖站长站 All Rights Reserved 皖ICP备07500611号