日期:2011-04-27  浏览次数:20790 次

刚开始学ASP时,照书里HTML中包含ASP
后来,用Response.Write 输出HTML
可现在看了这一篇文章,难道真的要把Response.Write写成一句(" & _?
你说说?
-------
(转http://www.ccidnet.com/html//tech/web/2000/11/10/58_1298.html)
什么才是提高ASP性能的最佳选择(一)
(作者:青苹果工作室编译 2000年11月10日 17:20)

将ASP生成的内容写入响应流中最有效的方法是什么?
  使用ASP的一个最主要原因是在服务器上生成动态内容。所以很明显,我们测试的起点是确定将动态内容发送到响应流中的最适合的方式。在多种选择中,有两个是最基本的:一是使用内联ASP标记,另一个是使用Response.Write 语句。

  为测试这些选择,我们创建了一个简单的ASP页面,其中定义了一些变量,然后将它们的值插入表格中。虽然这个页面很简单也不是很实用,但它允许我们分离并测试一些单独的问题。

  使用ASP内联标记

  第一个测试包括使用内联ASP标记< %= x % >,其中x是一个已赋值的变量。到目前为止,这个方法是最容易执行的,并且它使页面的HTML部分保持一种易于阅读和维护的格式。

  < % OPTION EXPLICIT

  Dim FirstName

  Dim LastName

  Dim MiddleInitial

  Dim Address

  Dim City

  Dim State

  Dim PhoneNumber

  Dim FaxNumber

  Dim EMail

  Dim BirthDate

  FirstName = "John"

  MiddleInitial = "Q"

  LastName = "Public"

  Address = "100 Main Street"

  City = "New York"

  State = "NY"

  PhoneNumber = "1-212-555-1234"

  FaxNumber = "1-212-555-1234"

  EMail = "john@public.com"

  BirthDate = "1/1/1950"

  % >

  < HTML >

  < HEAD >

  < TITLE >Response Test< / TITLE >

  < /HEAD >

  < BODY >

  < H1 >Response Test< /H1 >

  < TABLE >

  < tr >< td >< b >First Name:< /b >< /td >< td >< %= FirstName % >< /td >< /tr >

  < tr >< td >< b >Middle Initial:< /b >< /td >< td >< %= MiddleInitial % >< /td >< /tr >

  < tr >< td >< b >Last Name:< /b >< /td >< td >< %= LastName % >< /td >< /tr >

  < tr >< td >< b >Address:< /b >< /td >< td >< %= Address % >< /td >< /tr >

  < tr >< td >< b >City:< /b >< /td >< td >< %= City % >< /td >< /tr >

  < tr >< td >< b >State:< /b >< /td >< td >< %= State % >< /td >< /tr >

  < tr >< td >< b >Phone Number:< /b >< /td >< td >< %= PhoneNumber % >< /td >< /tr >

  < tr >< td >< b >Fax Number:< /b >< /td >< td >< %= FaxNumber % >< /td >< /tr >

  < tr >< td >< b >EMail:< /b >< /td >< td >< %= EMail % >< /td >< /tr >

  < tr >< td >< b >Birth Date:< /b >< /td >< td >< %= BirthDate % >< /td >< /tr >

  < /TABLE >

  < /BODY >

  < /HTML >

  /app1/response1.asp的完整代码

  以前的最佳(反应速度) = 8.28 msec/page

  在HTML的每一行使用Response.Write 语句

  许多比较好的学习文档建议避免使用前面的那种方法。其主要理由是,在输出页面和处理页面施加反应时间的过程中,如果web 服务器不得不在发送纯HTML和处理脚本之间进行转换,就会发生一种被称为上下文转换的问题。大部分程序员一听到这里,他们的第一反应就是将原始的HTML的每一行都包装在Response.Write函数中。

  …

  Response.Write("< html >")

  Response.Write("< head >")

  Response.Write(" < title >Response Test< /title >")

  Response.Write("< /head >")

  Response.Write("< body >")

  Response.Write("< h1 >Response Test< /h1 >")

  Response.Write("< table >")

  Response.Write("< tr >< td >< b >First Name:< /b >< /td >< td >" & FirstName & "< /td >< /tr >")

  Response.Write("< tr >< td >< b >Middle Initial:< /