分析ASP与ASP.NET的差异

开发 后端
在这个实践练习中, 你将创建ASP(Active Server Pages) 页面和ASP.NET页面,他们分别从数据库中取出数据并生成一个的HTML页面.在这两个例子中,ASP与ASP.NET数据访问的概念是相同的--它们都涉及与数据库的连接。但是收集数据和显示数据的方式是不同的。
ASP与ASP.NET的差异:创建ASP页面

1.打开Visual Studio.NET集成开发环境:点击Start,点击Programs,点击Experience VS .NET Content,点击Lab 3,点击ASP Source。一个名为Authors.asp的空ASP页面文件会在Visual Studio .NET IDE中打开,如图1所示。

Visual Studio .NET IDE中打开
图1 ASP页面

2.敲入以下代码

  1. <%@ Language=VBScript %>  
  2. <HTML>  
  3. <HEAD>  
  4. <META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">  
  5. <STYLE>  
  6. BODY { font:arial }  
  7. H1 { color:navy }  
  8. </STYLE>  
  9. </HEAD>  
  10. <BODY>  
  11. <DIV align=center>  
  12. <H1>Authors</H1>  
  13.  
  14. <%  
  15. '  
  16. ' Connecting to a database  
  17. '  
  18. dim cn  
  19. set cn = server.CreateObject("ADODB.Connection")  
  20. cn.Open "Provider=sqloledb;" _  
  21. & "Data Source=(local);" _  
  22. & "Initial Catalog=pubs;" _  
  23. & "User ID=sa"  
  24. ' Retrieving Data via the Recordset Object.  
  25. dim rs  
  26. set rs = server.CreateObject("ADODB.Recordset")  
  27. rs.Open "select au_fname, au_lname, phone from authors order by au_lname",cn   
  28. %>  

注意:

下面的代码是由静态HTML和服务器端脚本构成的,用一个循环把数据集(recordset)中的所有数据遍历出来。

  1. <TABLE border='1'>  
  2. <TR>  
  3. <TH>First Name</TH>  
  4. <TH>Last Name</TH>  
  5. <TH>Phone</TH>  
  6. </TR>  
  7. <%  
  8. do until rs.EOF  
  9. Response.Write "<TR>"  
  10. Response.Write "<TD>" & rs("au_fname") & "</TD>"  
  11. Response.Write "<TD>" & rs("au_lname") & "</TD>"  
  12. Response.Write "<TD>" & rs("phone") & "</TD>"  
  13. Response.Write "</TR>"  
  14. rs.MoveNext  
  15. loop  
  16. %>  
  17. </TABLE>  
  18.  
  19. <!-- Footer -->  
  20. <h5>Current as of <%Response.Write now%></h5>  
  21. </DIV>  
  22. </BODY>  
  23. </HTML>  

3.点击File,再点击Save Authors.asp。

4.关闭IDE。

ASP与ASP.NET的差异:观看ASP页面

1.观看ASP页面:点击Start,点击Programs,点击Experience VS.NET Content,点击Lab 3,再点击ASP。页面显示如图2。

ASP页面显示结果
图2 ASP页面显示结果

ASP与ASP.NET的差异:创建ASP.NET页面

1.打开Visual Studio.NET IDE:点击Start,点击Programs,点击Experience VS.NET Content,点击Lab 3,然后点击ASP .NET VB Source。一个名为Authors VB.aspx的空ASP.NET页面文件会在Visual Studio.NET IDE打开,如图3所示。

ASP.NET页面
图3 ASP.NET页面


2.点击Visual Studio.NET窗口左下角的HTML按钮查看页面代码

3.敲入以下代码

注意:System.Data和System.Data.SqlClient名字空间(namespaces)被声明在页面顶端,所以这两个名字空间中的所有类可以在下面ASP.NET页面中可用。

  1. <%@ Import Namespace="System.Data" %>  
  2. <%@ Import Namespace="System.Data.SqlClient" %>  
  3.  
  4. <HTML>  
  5. <HEAD>  
  6. <META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">  
  7. <STYLE>  
  8. BODY { font:arial }  
  9. H1 { color:navy }  
  10. </STYLE>  
  11.  
  12. </HEAD>  
  13. <BODY>  
  14. <DIV align=center>  
  15. <H1>Authors</H1> 

注意:服务器端脚本与静态HTML完全分离。你可以使用任何run-time语言,例如Microsoft Visual Basic?,Microsoft? Jscript?和C#。

  1. < script language="VB" runat="server">  
  2.  
  3. Sub Page_Load(Src As Object, E As EventArgs)   
  4.  
  5. Dim DS As DataSet  
  6. Dim MyConnection As SQLConnection  
  7. Dim MyCommand As SQLDataAdapter  
  8.  
  9. MyConnection = New SQLConnection("server=localhost;uid=sa;pwd=;database=pubs")  
  10. MyCommand=New SQLDataAdapter("select au_fname as 'First Name', au_lname as 'Last Name',Phone from Authors",MyConnection)  

注意:下面代码中的DataSet对象取代了Recordset对象,并请注意SQLDataAdapter对象中的fill方法。

  1. DS = new DataSet()  
  2. MyCommand.Fill(ds,"Authors ")

注意:下面代码设置了DataGrid 控件的DataSource属性。注意DataSet对象中 Table集合,跟Recordset对象不同,DataSet对象可以包含多个表.

  1. grdAuthors.DataSource=ds.Tables("Authors").DefaultView  

注意:在下面代码中,DataGrid控件用DataBind方法载入数据,然后DataGrid控件以HTML表形式显示数据。

  1. grdAuthors.DataBind()  
  2. End Sub  
  3. </script> 

注意:下面***行代码往页面中嵌入了一个DataGrid对象。DataGrid控件的其它属性也可以通过加入属性/值对来设置,例如:Width="700" BackColor="#ccccff"。

  1. <asp:DataGrid runat=server id=grdAuthors/>   
  2.  
  3. <!-- Footer -->  
  4. <h5>Current as of <%Response.Write (Now.ToString)%></h5>  
  5. </DIV>  
  6.  
  7. </BODY>  
  8. </HTML>  

4.点击File,再点击Save Authors VB.aspx。

5.关闭IDE。

ASP与ASP.NET的差异:观看ASP.NET页面

1.查看ASP.NET页面:点击Start,点击Programs,点击Experience VS .NET Content,点击Lab 3,再点击ASP.NET-VB。页面显示如图4。

ASP.NET显示页面
图4 ASP.NET显示页面


ASP与ASP.NET的差异介绍结束

当你完成了查看ASP.NET页面的工作,关闭所有窗口。

【编辑推荐】

  1. 浅析ASP.NET Web 安全性
  2. ASP.NET的Session State
  3. 浅析IsPostBack属性ASP.NET
  4. ASP.NET构架与安全机制
  5. 概述ASP.NET水晶报表
责任编辑:彭凡 来源: builder.com.cn
相关推荐

2009-07-24 15:47:35

ASP.NET与ASP

2009-03-13 10:58:48

ASP.NetMVC框架编程

2009-07-22 17:45:35

ASP.NET教程

2009-07-27 12:22:03

ASP.NET和ASPASP.NET入门教程

2009-12-02 09:07:45

ASP.NET 4.0

2009-07-28 17:17:19

ASP.NET概述

2009-08-03 14:22:33

什么是ASP.NET

2009-07-29 16:08:07

ASP和ASP.NET

2009-07-22 18:03:00

ASP.NET ASP

2009-07-28 14:10:14

2009-07-29 10:56:54

ASP.NET构架与安

2010-07-28 14:11:49

Flexasp.net

2009-07-29 09:38:06

Web开发ASP.NET

2009-08-03 13:38:18

ASP.NET编程模型

2009-07-27 15:48:43

2009-07-29 11:19:03

JavaScriptASP.NET

2009-07-29 14:52:12

IScriptContASP.NET

2009-07-29 16:33:28

GreeterLogiASP.NET

2009-07-27 10:35:33

TypeConvertASP.NET

2009-08-10 13:32:15

ASP.NET TimASP.NET组件设计
点赞
收藏

51CTO技术栈公众号