⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 0041.htm

📁 asp教程宝典``还不错
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<html>

<head>
<title>新时代软件教程:操作系统 主页制作 服务器 设计软件 网络技术 编程语言 文字编辑</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style>
<!--
body, table {font-size: 9pt; font-family: 宋体}
a {text-decoration:none}
a:hover {color: red;text-decoration:underline}
.1  {background-color: rgb(245,245,245)}
-->
</style>
</head>
<p align="center"><script src="../../1.js"></script></a>
    <p align="center"><big><strong>ASP+与ASP有什么不同</strong></big></p>

<div align="right">---摘自《ASP中华网》(文/飞刀)</div>
                  看到翻译就头疼,而且这篇文章还很长啊,本来这篇文章很早就会写完,不过为了不争气的中国队又耽误了几天,跑到工体,还是输了。。。。。。。</P>
                  <DIV class=article>
                  <P>在以前的文章中我们认识到ASP+是一个完整的操作系统的一部分。但是为什么ASP+不同于以前版本的ASP?他们之间到底有什么不同?如果你仅仅是运行一些页面或应用程序,那么你可能完全不会注意到他们之前的区别。 
                  </P>
                  <P>一旦你打开ASP+SDK或者帮助文件,你就会发现这个新产品几乎没有一点像以前的版本。 </P>
                  <P>当然不必惊慌,我们下一步就会看看一些主要的不同点。我们先看看为什么微软公司会认为我们需要一个新版本的ASP,它能帮助我们干什么。作为一名开发者,我们也得知道它有哪些新的特性来帮助我们建立站点和应用。</P>
                  <H2><FONT color=#0000ff 
                  size=3><B>我们真的需要一种新的ASP!?</B></FONT></H2>
                  <P>微软公司开发ASP+动机我们在上一篇文章已经讨论了。ASP已经取得了巨大的成功,为什么我们还需要一个新的版本!?我们可以从下面四点考虑: 
                  </P>
                  <TABLE>
                    <TBODY>
                    <TR>
                      <TD>
                        <UL type=disc>
                          <LI>现在的ASP的只能使用非结构语言编写,比如VBscript和JScript(如果用其它的语言就还需要单独的解释器)。而且当ASP在第一次执行时,它解析并在cache中储存这些代码,这样的局限性就是不允许其它结构性语言比如VB和C++的使用,从而限制了它们的优越性。<B>而ASP+真正提供了中层语言执行结构,允许各种语言的使用</B>。 

                          <LI>使用HTML,文本,对象混合的ASP很容易建立一个大型的页面。但是很难重复利用这些代码,除非你把一些代码放在一个include文件中.这不是最好的解决方法。在很多的场合中,开发一个网络应用需要广泛的专业技能,比如,你写程序,另外一些人做美工,还有一些人设计网页的内容,如果仅仅使用ASP很难把这些人联系起来来完成同一件事。<B>但是ASP+真正允许了单独的代码与内容共存.</B></LI></UL></TD></TR></TBODY></TABLE>
                  <UL type=disc>
                    <LI>在以前版本中的ASP中,你必须为几乎每件事情写代码。为了保持在form中的数据,写代码。为了确认用户写入的数据,写代码。为了发送一些简单的数据,写代码。而在ASP+中引入了一种真正的组件模式,通过这种服务器端的控制以及事件触发,我们似乎感觉是好像是在操作VB中"FORM".<B>这种ASP+中的新组件控制是宣告性质的(也就是说,你如果想使用这些组件控制来作一些事情,你只需要声明一下就行了,其它的不用管了,哈哈,是不是觉得有些傻瓜啊?!?),因此你实际上只需写很少的代码了.实际上,在很多情况下,你完全不用写任何的代码.</B> 

                    <LI>外面的世界时刻都在变化,已经有相当比例的用户是通过"互联网设备"来访问你的站点了,比如说WAP手机,PDA,置顶盒,以及其它的一些,也许不久的将来使用这些上网的用户比用PC的还多。这就意味着我们可能要在服务器上做更多的事以与不同的设备相适应。我们也不得不在使用不同格式输出,比如WML。同时,新的互联设备和商业应用也需要有能力从网络应用中发送或读取WML.现在使用ASP做这些,需要你使用XML解析器,使用XML转换数据。而ASP+网络服务会用更简单的方式使用你做出的页面能够适应不同的设备。 
                    </LI></UL>
                  <P>除了上面的这些,快速发展的分布是应用也需要开发地更加快速,更加模块化,重复利用性更强,更容易操作,让更多的平台支持。像SOAP(Simple 
                  Object Access 
                  Protocol)这样的新标准以及B2B的商业需要,需要一种新的技术来适应不同的系统。网络应用和网站需要提供一种更加强大的可升级的服务,ASP+能够适应上面的要求,并且能够在发生错误、缓冲区溢出时重新启动应用程序。</P>
                  <P>因此为了适应这些需要,ASP已经对基础甚至是开发环境进行了修补。Visual Studio 
                  7.0将会对ASP+应用进行完成的支持(包括ASP和ASP+),尽管现在还只有很少的工具能够获得其支持。这种丰富的,组件模式程序开发模块被设计得相当友好,同时它也支持所有Visual 
                  Studio 语言,包括VB,C++以及C#,特别注意一下第三种语言,它流行的日子离我们不太遥远了。 </P>
                  <H2><FONT color=#0000ff 
                  size=3><B>ASP+怎样让你的生活更加简单?</B></FONT></H2>
                  <P>对于今天的WEB程序员来说最大的挑战就是不断变化地浏览器的兼容性,以及它们不断升级的复杂性。在保证页面能在所有流行浏览器下工作的同时又得尽量地使用每个浏览器最新属性来建立更加具有交互式的页面,这简直就是一场恶梦。</P>
                  <P>更加可怕的就是对于不同的用户设备建立不同的网页。当然,在WAP手机和传统的浏览器上建立同等水平的页面是不可能,因为由于带宽的原因,在很多WAP手机中一次只能显示12字3行的文本信息。 
                  </P>
                  <P>一个最简单的解决办法就是动态地对不同的用户生成不同的输出,或者就是对不同的用户写多个页面。第二种方法没有效率,我想大多数地开发者都会选择第一种方法。但是这就意味着用户的每次点击都会让服务器判断应该向用户显示什么.</P>
                  <P>如果这一切可能,为什么不把这些过程自动化!?为了结束这一切,ASP+引入了一个新的服务控制的概念,它封装了一些普通的任务,提供了一种清晰的编程模块。他们同样帮助管理处理不同的用户类型。 
                  </P>
                  <H3><FONT color=#0000ff 
                  size=3><B>服务器端HTML控制使得我们减少了不少的代码</B></FONT></H3>
                  <P>ASP已经提供了一种在服务器上执行组件的能力,这些组件能够产生一些代码用以返回给用户。ASP+通过服务控制继承了这一概念。转换HTML元素到服务控制的需要仅仅是一个附加的属性:runat="server"(这个我们在ASP也见到过) 
                  </P>
                  <P>页面中的任何HTML元素都能使用这种方法标注,ASP+会在服务器上执行这些元素,并且对不同的用户产生不同的代码。<BR></P>
                  <P>这种让HTML元素在服务器上执行的概念第一次看来有些奇怪,但是当你发现在它在这个页面变得完全功能化,你还有什么好想的了。 
                  </P>
                  <H4><FONT color=#0000ff size=3><B>保持状态的问题</B></FONT></H4>
                  <P>在我们建立交互页面和应用时最烦人的一个问题就是处理从客户端传来的数据,然后保持这些数据加以控制。ASP+的一个核心目标就是简化这一过程。这不会给程序员带来任何的困惑,而且能在大多数的浏览器上工作正常。</P>
                  <P>我们先来看看下面的代码。这段代码制作了一个简单的页面让用户输入电脑的名字和选择操作系统。OK,它本身不是个很烦人也不是令人兴奋的例子,但是它反映了我们常常做的一些事。当这个页面提交后,使用request.form集来取得相应的数据,然后用request.write显示它们.</P><!-- @@START --><PRE class=CodeForeground><FONT color=#3333ff>&lt;HTML&gt;
  &lt;BODY&gt;
    &lt;%
    If Len(Request.Form("selOpSys")) &gt; 0 Then
      strOpSys = Request.Form("selOpSys")
      strName = Request.Form("txtName")
      Response.Write "You selected '" &amp; strOpSys _
                   &amp; "' for machine '" &amp; strName &amp; "'."
    End If
    %&gt;    
    &lt;FORM action="pageone.asp" method="post"&gt;
      Machine Name:
      &lt;INPUT type="text" name="txtName"&gt;
      &lt;P /&gt;
      Operating System:
      &lt;SELECT name="selOpSys" size="1"&gt;
        &lt;OPTION&gt;Windows 95&lt;/OPTION&gt;
        &lt;OPTION&gt;Windows 98&lt;/OPTION&gt;
        &lt;OPTION&gt;Windows NT4&lt;/OPTION&gt;
        &lt;OPTION&gt;Windows 2000&lt;/OPTION&gt;
      &lt;/SELECT&gt;
      &lt;P /&gt;
      &lt;INPUT type="submit" value="Submit"&gt;
    &lt;/FORM&gt;
  &lt;/BODY&gt;
&lt;/HTML&gt;
</FONT></PRE><!-- @@END --><BR>
                  <CENTER>
                  <TABLE bgColor=#eaeaea border=1 borderColor=#000000 
                  width="70%">
                    <TBODY>
                    <TR>
                      <TD>尽管这是一个ASP文件(后缀名是.asp不是.aspx,但是如果我们把它的文件后缀改为.aspx,它同样能够在ASP+工作正常。请记住,这两个系统能够在一个机器上很好的共存,这个后缀名只是在判断,这个解析工作是ASP来做,还是ASP+来做。 
                      </TD></TR></TBODY></TABLE></CENTER>
                  <P>下面的快照中我们看到了在IE5中执行的结果,当用户点击这个提交按钮,将会把数据传向服务器,这个页面将会被刷新,同时显示我们选择的结果。当然,在真正的应用中我们可以将这些数据存入数据,或者做一些其它的事,这里为了简便,我们只是让它显示出来。</P>
                  <P><IMG src="images/20000712_1.gif"></P>
                  <P>这个页面的问题便是它不能保持状态,换句话说就是它只能返回默认值,用户在重新此页时不得不重新输入数据。如下图: </P>
                  <P><IMG src="images/20000712_2.gif"></P>
                  <P>为了实现上面的要求,我们不得不在这个代码中加入一些数据,如下:</P><!-- @@START --><PRE class=CodeForeground>   <FONT color=#3333ff>&lt;FORM action="pageone.asp" method="post"&gt;
      Machine Name:
      &lt;INPUT type="text" name="txtName"
             <B>value="&lt;% = Server.HTMLEncode(Request("txtName")) %&gt;"&gt;</B>
      &lt;P /&gt;
      Operating System:
      &lt;select name="selOpSys" size="1"&gt;
        &lt;OPTION
          <B>&lt;% If strOpSys = "Windows 95" Then Response.Write " selected" %&gt;&gt;</B>
        Windows 95&lt;/OPTION&gt;
        &lt;OPTION
          <B>&lt;% If strOpSys = "Windows 98" Then Response.Write " selected" %&gt;&gt;</B>
        Windows 98&lt;/OPTION&gt;
        &lt;OPTION
          <B>&lt;% If strOpSys = "Windows NT4" Then Response.Write " selected" %&gt;&gt;</B>
        Windows NT4&lt;/OPTION&gt;
        &lt;OPTION
          <B>&lt;% If strOpSys = "Windows 2000" Then Response.Write " selected" %&gt;&gt;</B>
        Windows 2000&lt;/OPTION&gt;
      &lt;/SELECT&gt;
      &lt;P /&gt;
      &lt;INPUT type="submit" value="Submit"&gt;
    &lt;/FORM&gt;</FONT>
</PRE><!-- @@END -->
                  <P>看看上面的代码,那么多的if .....then 
                  ,很烦人吧(其实在ASP中这一些是可以简化,可能是原作者想突出ASP+比ASP更简洁,故意把这个代码写得很长)下面的图是我们修改后的代码结果:</P>
                  <P><IMG src="images/20000712_3.gif"></P>
                  <H4><FONT color=#0000ff size=3><B>自动保持状态的控制</B></FONT></H4>
                  <P>那么ASP+是怎样处理这个问题的了!?下面的代码让我们看到了ASP+的优点给我们带来的变化。我们来仔细看看下面的代码吧。这次这个页面中的一些元素加上了runat="server"的属性。当ASP+看到这些元素,它将会在服务器上执行这些代码,并且产生正确的输出:</P><!-- @@START --><PRE class=CodeForeground>  <FONT color=#3333ff><B>&lt;FORM runat="server"&gt;</B>
      Machine Name:
      <B>&lt;INPUT type="text" id="txtName" runat="server"&gt;</B>
      &lt;P /&gt;
      Operating System:
      <B>&lt;select id="selOpSys" size="1" runat="server"&gt;
        &lt;OPTION&gt;Windows 95&lt;/OPTION&gt;
        &lt;OPTION&gt;Windows 98&lt;/OPTION&gt;
        &lt;OPTION&gt;Windows NT4&lt;/OPTION&gt;
        &lt;OPTION&gt;Windows 2000&lt;/OPTION&gt;
      &lt;/SELECT&gt;</B>
      &lt;P /&gt;
      &lt;INPUT type="submit" value="Submit"&gt;
    &lt;/FORM&gt;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -