1、第第5章章华南农业大学华南农业大学 信息信息(软件软件)学院学院2008.25.1 ASP.NET 2.0 概述5.2 创建ASP.NET的应用程序5.3 ASP.NET的常用控件和对象5.4 Web数据库应用程序实例5.6 发布ASP.NET Web应用程序第第5章章 使用使用ASP.NET创建创建Web应用程序应用程序WEBWEB应用的开发工具应用的开发工具ASP.NETASP.NET为用户提供了一个全新而强大的服务器控件结构。它几乎完全是基于组件和模块化的,每个页面、对象和HTML元素都是一个运行的组件对象。ASP.NET使用.NET Framework所支持的VB.NET,C#等开发语
2、言(支持脚本),这些语言生成的网页在后台被转换成类(Class),并被编译成一个动态链接库(DLL),因此,ASP.NET的执行效率比ASP更高。ASP.NETASP.NET可以实现了用户界面程序(可以实现了用户界面程序(HTMLHTML代码)和功代码)和功能实现程序(用能实现程序(用VB.NETVB.NET、C#C#等语言编写的程序)的分等语言编写的程序)的分离离(也可合一也可合一)。一个分离的。一个分离的ASP.NETASP.NET页面包含两部分:页面包含两部分:aspx文件,包含HTML代码和控件信息,用来描述页面外观;aspx.cs文件,包含实现程序功能的代码。优点:优点:使开发工作细
3、化,从事美工的设计人员负责完成界面文使开发工作细化,从事美工的设计人员负责完成界面文件,编程人员负责代码文件,通过团队合作提供应用程序的质件,编程人员负责代码文件,通过团队合作提供应用程序的质量和开发效率。量和开发效率。1,背景介绍背景介绍IIS,Internet Information Server在VS2003,必须安装IIS,在创建WEB应用程序时,一般还需要创建一个虚拟目录。2,创建创建(网站网站)选项选项模版,位置(文件系统,HTTP,FTP),语言选项 3,Web站点的位置选项站点的位置选项文件系统站点HTTP站点(本地或远程站点)FTP部署站点 4,创建文件系统站点说明创建文件系
4、统站点说明适用环境适用环境没有IIS;文件夹中已有WEB文件,用户希望将文件夹中的文件作为项目文件打开;优点优点只能从本地计算机访问站点,减少安全漏洞;无需安装IIS;无需具备管理员权限即可调试;缺点缺点无法使用某些IIS功能特性 5,相关文件夹说明相关文件夹说明App_Data,包含应用程序数据文件;App_Code,包含希望作为应用程序一部分进行编译的实用工具类和业务对象的源代码;App_Themes,包含用于定义ASP.NET网页和控件外观的文件集合(skin,css,图像文件等);Bin,包含要在应用程序中引用的控件、组件或其他代码的已编译程序集(.dll),在应用程序中将自动引用Bi
5、n文件夹中的代码所表示的任何类。6,关于关于WEB窗体窗体新建窗体新建窗体 代码独立选项;使用母版页选项;起始页窗体起始页窗体检查检查IIS是否正常是否正常在浏览器中输入http:/localhost或 http:/127.0.0.1来测试服务器能连接到默认的网页(localstart.asp)。控制面板-管理工具-internet服务管理器-默认web站点-右键-新建“虚拟目录”。注意:创建文件系统网站无需检查以上两项内容1.常用控件常用控件的的分类分类 标准控件,服务器端控件 页代码形式 导航控件,Menu,SiteMap,TreeView 数据控件,数据访问控件 验证控件,验证用户输入
6、HTML控件,与标准的Html表单元素一一对应,可以同时在客户端和服务器端使用,在服务器端使用时其属性标记中加上runat=“server”。2.Web窗体中的事件响应过程窗体中的事件响应过程 Web窗体采用C#.NET中相同的事件驱动编程机制。Page类是Windows窗体在ASP.NET中的对应形式,该类具有Load、UnLoad等事件。区别:区别:Windows窗体下单击某个按钮,则该按钮的Click事件过程就会立即被调用;Web窗体的事件是在服务器上触发的,用户对控件的操作只有被返回到服务器后相应的事件过程代码才会被执行。3.使用使用ASP.NET标准控件标准控件WEB标准控件源自Sy
7、stem.Web.UI.WebControls HTML控件源自System.Web.UI.Control 控件的主要生命周期 初始化,Init 或 OnInit方法 Load,Load或OnLoad方法Dispose,Dispose方法,执行资源清除操作4.常用的常用的ASP.NET标准控件标准控件LabelButton,LinkButton /Command事件TextBox /TextMode属性HyperLinkDropDownList /单个选择ListBoxCheckBox,CheckBoxListRadioButton,RadioButtonListTable5.验证控件验证控件
8、RequiredFieldValidator,必填验证CompareValidator,比较验怔RegularExpressionValidator,正则表达式验证CustomValidator,自定义验证ValidationSummary,验证显示1.Page对象的常用属性对象的常用属性 (1)IsPostBack属性(2)Application属性(3)Request属性(4)Response属性(5)Server属性(6)Session属性2.Page对象的常用事件对象的常用事件 1,Init事件 2,load事件,页面载入,在Web页面被加载时触发 3,事件处理 4,unload事件,
9、页面卸载,在Web页面结束时触发。Response对象是从System.web下的HttpResponse类中派生出来的。CLR(通用语言运行时)会根据用户的请求信息创建一个Response对象,该对象被用于回应客户浏览器,告诉浏览器回应内容的报头、服务器端的状态信息以及输出制定的内容。主要作用主要作用 服务端向客户端回应消息.常用的属性及方法常用的属性及方法:(1)Buffer属性 (2)Write方法 (3)Redirect方法 使用Response对象:Response.Write(“alert”“数据已更新,请返回”“”)-对话窗口 Response.Redirect(“student
10、_add_del.aspx”)-页面转移Response.Redirect(“student_add_del.aspx?st=”&ddlNo.SelectedItem.Text)-带参数的页面转移Page.RegisterStartupScript(“xxx”,“window.open(newpage.aspx)”);-在新窗口中打开另一页在页面间传递参数在页面间传递参数 的的方法方法Request对象是从System.web下的HttpRequest类派生出来的。当客户端浏览器请求ASP.NET应用程序时,CLR将客户端请求信息封装在Request对象中,包括请求报头(Header、浏览器类
11、型、浏览器版本号、用户使用的语言及编码方式等)、请求方法(Post或Get)、参数名称、参数值等。主要作用主要作用:客户端向服务端请求消息.Request对象的主要属性对象的主要属性:(1)UsetHostAddress属性 (2)QueryString属性 (3)Browser属性 (4)ServerVariables属性1.Application对象对象和和Session对象对象的的区别区别 Application对象和Session对象都可在服务器端保存数据或对象,但Application对象中保存的信息是为所有来访的浏览器共享的,而Session对象保存的数据则是仅为特定的来访者或连接
12、共享的。2.向向Application对象或对象或Session对象中存入数据对象中存入数据Application(book_name)=Visual Studio.NET教程Session(“book_name”)=“Visual FoxPro程序设计教程”提示提示:在WEB应用程序中,常用Application对象保存应用系统的全局变量,用Session对象保存应用系统的用户变量Server对象常用的方法对象常用的方法:1.MapPath方法 把网页URL路径转换成服务器的实际路径。如,D:www是某站点的根目录,则Server.mappath(“/4.htm”)语句将返回D:www4.h
13、tm。2.Transfer方法 Transfer方法与前面介绍过的Response对象的Redirect方法十分相似,都是用于将当前页面重定向到另一个页面中。例如,下列语句将页面重定向到WebForm2.aspx。Sever.Transfer(webform2.aspx)3.HTMLEncode方法 该方法对特殊字符如,“”进行编码,使之不再被视为HTML标记。下列语句在浏览器中,将显示双引号中的所有内容,即将HTML标记直接显示出来。Response.Write(Server.HtmlEncode(不再表示标题3,而要将HTML标记显示出来)4.URLEncode方法 空格和汉字等对URL地
14、址来说都是特殊字符,所以若网址中包含特殊字符,就需要用Server.URLEncode对特殊对象进行编码。下列语句使用Server对象的URLEncode方法对URL数据进行了编码,从而使之能正确地显示在浏览器中。1.数据绑定数据绑定 相关属性相关属性:DataSource,DataSourceID,DataMember DataTextField,DataValueField 绑定表达式绑定表达式:A,%表示服务端,#表示数据绑定asp:label runat=“server”Text=/asp:label runat=“server”Text=/B,DataBinder.Eval方法 2.
15、常用数据绑定控件常用数据绑定控件 GridView控件 DetailsView控件 FormView控件常用方法:databind一一,功能特征功能特征 1,显示数据 2,格式化数据 3,数据分页及导航 4,数据排序 5,数据编辑 6,数据行选择 7,自定义外观和样式二二,主要属性主要属性 1,DataSourceID 2,DataKeyNames 3,AutogenerateColumns 4,Columns 5,AllowPaging,PageSize 6,自动套用格式三三,列的设置列的设置 四四,模板列的设置模板列的设置1,ItemTemplate2,AlternatingItemTem
16、plate3,EditItemTemplate4,HeaderTemplate5,FooterTemplate五五,主要事件主要事件 1,RowDataBound,行绑定事件 2,RowCommand,行命令事件 3,PageindexChanging,页码改变事件 4,SelectIndexChanging,选择项改变事件 5,六六,分页与排序分页与排序 1,页码格式 2,排序表达式一一,主要功能主要功能 以表格形式显示和处理来自数据源的单条数据记录,其表格只包含两个数据列。一个数据列逐行显示数据列名,另一个数据列显示与对应列名相关的详细数据值。二,功能列表二,功能列表 1,支持与数据源绑定
17、2,内置数据添加功能3,内置更新、删除、分页功能4,支持以编程方式访问5,可以通过主题和样式进行自定义外观一一,主要功能主要功能 相同点:与DetailsView控件基本类似;不同点:显示方式不同。二,功能列表二,功能列表 1,支持与数据源绑定2,内置数据插入、更新、删除功能3,内置分页功能4,允许以编程方式访问5,可以通过主题和样式进行自定义外观使用GridView 控件通过WEB窗体添加数据通过WEB窗体编辑删除数据常见数据源常见数据源SqlDataSourceAccessDataSourceXmlDataSourceSiteMapDataSourceObjectDataSource1.数
18、据源说明数据源说明2.不仅可以连接SQL数据库,还可以连接OleDB、ODBC、Oracle数据库。asp:SqlDataSource ID=SqlDataSource1 runat=server ConnectionString=DeleteCommand=DELETE FROM Customers WHERE CustomerID=?InsertCommand=INSERT INTO Customers(CustomerID,CompanyName,ContactName,ContactTitle,Address,City,Region,PostalCode,Country,Phone,F
19、ax)VALUES(?,?,?,?,?,?,?,?,?,?,?)ProviderName=SelectCommand=SELECT*FROM Customers UpdateCommand=UPDATE Customers SET CompanyName=?,ContactName=?,ContactTitle=?,Address=?,City=?,Region=?,PostalCode=?,Country=?,Phone=?,Fax=?WHERE CustomerID=?2.主要属性主要属性1.ConnectionString 连接字符串2.ProviderName 数据类型说明3.Sele
20、ctCommand4.UpdateCommand5.DeleteCommand6.InsertCommand7.DataSourceMode 数据返回模式(DataReader/DataSet)3.主要方法主要方法Public int Delete();执行DeleteCommandPublic int Insert();执行InsertCommandPublic int Update();执行UpdateCommandPublic Ienumerable Select(DatasourceSelectArguments arguments);执行SelectCommand4.主要事件主要事件
21、Deleted,DeletingInserted,InsertingSelected,SelectingUpdated,Updating,Filtering1.数据源说明数据源说明 只连接Accesss数据库。2.主要属性主要属性 基本同SqlDataSource;DataFile3.主要事件、方法主要事件、方法 基本同SqlDataSource;1,Windows窗体下的对话框函数在窗体下的对话框函数在web窗体窗体下不能使用。下不能使用。2,使用方法:脚本语言使用方法:脚本语言1,关于Web.config文件 -基于XML格式的配置文件定义一个连接字符串定义一个连接字符串:在页面中访问在页面中访问:System.Configuration.ConfigurationSettings.AppSettingsMyConn 2,2,Global.Global.asaxasax文件文件,主要配置以下事件主要配置以下事件:创建方法 相关协议 主要作用一一.主要功能主要功能:1,自定义页面内容 2,导入和导出WebPart 3,建立通信机制 4,对站点级设置进行管理和个性化设置二二.主要控件主要控件:1,WebPartManager 2,WebPartZone 3,EditorZone 4,CatalogZone