当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > ASP.NET立即上手教程(2)

ASP.NET
使用函数传递参数来执行相应的数据库操作
如何实现在窗体和窗体之间进行传递数据
ASP.NET中文显示之两种解决方法
ASP.NET、JSP及PHP之间的抉择
ASP.NET 2.0发送电子邮件中存在的问题
谈谈HtmlControl与WebControl的区别与用途
从ASP.NET 1.1升级到ASP.NET 2.0要考虑的Cookie问题
通过系统配置来提高ASP.NET应用程序的稳定性
妙用ASP2.0中的URL映射改变网址
AJAX实现web页面中级联菜单的设计
ASP.NET跨页面传值技巧总结
再议ASP.NET DataGrid控件中的“添加新行”功能
Geometry 对象浅析
重构CollapsibleSplitter
如何利用.NET Framework使用RSS feed
ASP.NET获取IP与MAC地址的方法
在ASP.NET 2.0中使用样式、主题和皮肤
ASP.NET中为GridView添加删除提示框
ASP.NET 2.0,无刷新页面新境界
看看一个.net版对话框控件

ASP.NET立即上手教程(2)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 53 ::
收藏到网摘: n/a

什么是asp.net的Web Forms

Asp.net Web Forms 页面框架是可升级的通用语言运行时刻(CLR)程序模型,用来在服务器端动态生成WEB页面。(美国人说话就是别扭,其实Web Forms就是asp.net编写的页面)

作为ASP的合理演化(ASP.NET对现存的ASP提供语法兼容),ASP.NET Web Forms框架的设计目的,是用来解决ASP模式的不足。它提供:

· 创建和使用可重用的用户界面控件,封装常用的功能,减少页面开发者书写代码的工作量。

· 为开发者提供结构清晰、风格井然的页面逻辑(而不是“意大利面条”的结构)。

· 提供强大的所见即所得(WYSIWYG)的页面开发工具(ASP代码对于工具是不透明的)

本教材的这一部分内容提供高水平的代码,对ASP.NET WEB FORMS的关键功能做一个初步介绍。后续的章节将更深入地剖析ASP.NET WEB FORMS的功能

书写第一个Web Forms页面

ASP.NET Web Forms 页面是以aspx为扩展名的文本文件。他们可以通过IIS虚拟根目录树来进行配置。当浏览器客户端请求.aspx资源的时候,ASP.NET运行时刻库分析和编译目标文件,形成.NET框架类。这个类能够用来动态的处理即将开始的请求。(注意:.aspx文件只有在第一次被访问的时候编译;编译后的结果在以后的请求中被重复利用)。

可以简单的把HTML文件的扩展名改为aspx,从而得到一个asp.net文件(不需要修改任何代码)。例如,下面的例子演示一个HTML页,它收集用户的姓名和分类偏好,然后在按下按钮的时候提交表单。

C# Intro1.aspx

重要提示:注意点击Lookup 按钮的时候什么也不会发生。这是因为.aspx文件仅仅包含静态的HTML(没有任何动态的内容)。因此,同样的HTML将在每一次往返的的时候,返回给客户端,表单的字段内容在提交过程中丢失。

使用ASP的<% %>引用标志

ASP.NET对现有的ASP页面提供语法兼容。这种兼容包括<% %>代码引用块,在.aspx文件中,它可以和HTML内容混合使用。这些代码块在引用的时候从上倒下执行。

下面的例子演示了在HTML块中,如何使用<% %>引用标志来实现循环(依次增大字体尺寸)

C# Intro2.aspx

重要提示:与ASP不同,上面<% %>块中使用的代码是真正编译过的,而不是脚本引擎的解释执行。因此提高了运行时的执行效率。

ASP.NET页面开发者可以利用<% %>代码块动态的修改HTML的输出,就像使用ASP一样。例如,下面的例子演示了如何使用<% %>实现响应客户端提交的结果。

C# Intro3.aspx

重要提示:<% %>代码块提供了一种有力的方法,可以实现从ASP.NET页面定制和操作文本输出,但是,却没有提供结构清晰的程序模式。正如上面的例子,开发者仅仅使用<% %>代码块,就必须在请求发送往返中,自己管理页面状态,自己管理解释后送出的值。

ASP.NET服务器控件介绍

除了使用(或者说作为一种代替)<% %>来编动态内容的程序以外,asp.net页面开发者可以使用ASP.NET 服务器控件来设计WEB页面程序。

在.aspx文件中声明服务器空间的时候,使用asp.net特定的标签或者使用包含 runat="server" 属性的html标签。HTML标签作为控件使用的情况,在名称空间System.Web.UI.HtmlControls中定义。任何不能映射到控件的标签,被赋值为System.Web.UI.HtmlControls.HtmlGenericControl类型。

下面的例子使用了4个服务器控件:<form runat=server>, <asp:textbox runat=server>, <asp:dropdownlist runat=server>, 和 <asp:button runat=server>。在运行时刻,这些服务器控件自动生成HTML内容。

C# Intro4.aspx

重要提示:在传递到服务器端的循环往返(Rount Trips-----我不知道如何准确的翻译这个词汇,他的意思是从客户端提交数据到服务器,然后从服务器返回数据的过程)过程中,这些服务器控件自动保持任何客户端输入的值(它代替了循环往返的时候,表单字段保存在<input type="hidden">中的做法)。另外请注意,ASP.NET中保持数据不需要任何客户端的脚本支持除了支持标准的html输入控件之外,ASP.NET允许开发者在页面中使用更丰富的定制控件。例如,下面的例子演示了如何在页面上使用<asp:adrotator>控件,实现动态轮显广告C# Intro5.aspx