ASP-.NET介绍-计算机网络安全与防护的PPT-互联网软件开发 课件_第1页
ASP-.NET介绍-计算机网络安全与防护的PPT-互联网软件开发 课件_第2页
ASP-.NET介绍-计算机网络安全与防护的PPT-互联网软件开发 课件_第3页
ASP-.NET介绍-计算机网络安全与防护的PPT-互联网软件开发 课件_第4页
ASP-.NET介绍-计算机网络安全与防护的PPT-互联网软件开发 课件_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第五章:第五章:介绍介绍内容提纲内容提纲1、简介、简介2、Web窗体窗体3、效劳器控件、效劳器控件4、用户控件和自定义控件、用户控件和自定义控件5、性能优化、性能优化5.3 效劳器控件控件控件控件控件 2.2.标准标准WebWeb控件控件 3.3.其他其他WebWeb控件控件5.3 效劳器控件HMTLHMTL控件控件HTMLHTML控件可以被认为是效劳器端控件,因为其可以控件可以被认为是效劳器端控件,因为其可以编写效劳器端事件。编写效劳器端事件。HTMLHTML控件其定义与应用方法和控件其定义与应用方法和HTMLHTML标记类似,只是标记类似,只是需要设置需要设置idid和和runatruna

2、t属性。属性。idid:代表:代表HTMLHTML控件的名称。控件的名称。runatrunat:代表:代表HTMLHTML控件为效劳器端控件,其值为控件为效劳器端控件,其值为“server“server。即:。即:runat=“serverrunat=“server5.3 效劳器控件WebWeb效劳器控件效劳器控件1 1WebWeb效劳器控件可以自动检测客户端浏览器的类型,效劳器控件可以自动检测客户端浏览器的类型,产生一个或多个适当的产生一个或多个适当的HTMLHTML控件,并自动调整成控件,并自动调整成适合浏览器的输出。适合浏览器的输出。WebWeb效劳器控件支持数据绑定技术,可以和数据源连

3、效劳器控件支持数据绑定技术,可以和数据源连接,用来显示或修改数据源的数据。接,用来显示或修改数据源的数据。5.3 效劳器控件WebWeb效劳器控件效劳器控件2 2WebWeb效劳器控件格式如下:效劳器控件格式如下:asp:control_name id=some_id runat=server /每一个每一个WebWeb效劳器控件都有一个效劳器控件都有一个的前缀,表的前缀,表示此控件为示此控件为WebWeb效劳器控件。效劳器控件。每一个每一个WebWeb效劳器控件具有效劳器控件具有idid和和runatrunat属性,其含义属性,其含义与与HTMLHTML控件中相应的属性的含义一致。控件中相应

4、的属性的含义一致。5.3 效劳器控件效劳器端事件效劳器端事件事件是一种在满足某种条件如:鼠标单击后开事件是一种在满足某种条件如:鼠标单击后开始运行的一种程序。始运行的一种程序。在中所引发的事件分为在中所引发的事件分为页面级事件页面级事件控件级事件控件级事件大局部控件都可以引发效劳器端事件完成某些功能大局部控件都可以引发效劳器端事件完成某些功能。5.3 效劳器控件WebWeb效劳器控件的共用属性效劳器控件的共用属性属性属性说明说明AccessKey用来指定键盘的快速键。可以指定这个属性的内容为数字或是英文字母,当使用者按下键盘上的”Alt”再加上所指定的值时,表示选择该控件。BackColor设

5、定对象的背景色,其属性的设定值为颜色名称或是 #RRGGBB 的格式。Visible 决定了控件是否显示,设定本属性为False 时,控件的使用者接口就会消失ToolTip小提示。设定本属性时,当使用者停留在Web 控件上时就会出现提示的文字5.3 效劳器控件常用常用WebWeb效劳器控件的分类效劳器控件的分类常用的常用的WebWeb效劳器控件有几下几类:效劳器控件有几下几类:标准控件标准控件数据操作控件数据操作控件验证控件验证控件导航控件导航控件5.3 效劳器控件标准控件标准控件表.常用标准控件控件控件说明说明Button,LinkButton,ImageButton按钮控件,在鼠标单击时都

6、可以将窗体提交给服务器TextBox在Web页面中接收如入的文本内容CheckBox,CheckBoxList复选框RadioButton,RadioButtonList单选框ListBox列表框控件,用户可以从中选择一条或多条DropDownList 下拉列表Table表格控件HiddenField存储用户不希望显示的字段5.3 效劳器控件标准控件例如标准控件例如1 1简单控件简单控件 textBoxName textBoxPassword TextMode:Password radioButtonMale GroupName:性别 radioButtonFemale GroupName:性

7、别 radioButtonListWork RepeatColumns:4 dropDownListProvince AutoPostBack:True listBoxCity checkBoxListHobby RepeatColumns:2 buttonOK 图图 12-1 简简单单 Web 服服务务器器控控件件综综合合示示5.3 效劳器控件标准控件例如标准控件例如2 2表格表格5.3 效劳器控件数据操作控件数据操作控件表.常用数据操作控件控件控件说明说明SqlDataSource 一种数据源控件,可以连接到任何ADO.NET支持的数据源(如SQL Server、Oracle等),从中检索

8、数据,并使得其他控件(如GridView等控件)可以绑定到数据源GridView主要用作以表格的形式显示数据DataList一种以自定义格式显示绑定数据源信息的控件DetailsViewDetailsView控件是从关联的数据源中逐条显示记录的控件FormViewDetailsView控件的使用方法基本相同,均是用于显示数据源中的单个记录5.3 效劳器控件GridViewGridView控件控件GridView控件主要用作以表格的形式显示数据,它不仅可以利用数据源控件自动绑定数据显示,还可以直接使用数据源控件的数据操作命令对表中数据进行选择、排序、编辑等操作。l数据绑定和显示l数据编辑l分页和

9、排序5.3 效劳器控件验证控件验证控件1 1WebWeb效劳器验证控件的作用:检查用户输入信息是否效劳器验证控件的作用:检查用户输入信息是否有效有效使用验证控件需要注意的问题:使用验证控件需要注意的问题:验证控件不能单独使用验证控件不能单独使用可以对输入控件同时使用多个验证控件可以对输入控件同时使用多个验证控件验证控件可以在效劳器端和客户端执行验证,除非验证控件可以在效劳器端和客户端执行验证,除非浏览器不支持客户端验证,或者显示禁用客户端浏览器不支持客户端验证,或者显示禁用客户端验证验证EnableClientScriptEnableClientScript属性设为属性设为falsefalse

10、,否那么效劳器验证和客户端验证都会执行。否那么效劳器验证和客户端验证都会执行。5.3 效劳器控件验证控件验证控件2 2控件控件说明说明ValidationSummary用于在某个固定位置显示Web页上所有验证控件失败的错误信息。该控件不能单独使用,它所显示的错误信息内容是由对应验证控件的ErrorMessage属性所指定的RequiredFieldValidator用于验证用户是否进行了有效的输入。RangeValidator用于验证输入控件的值是否在指定范围内RegularExpressionValidator 正则表达式控件,用于验证指定输入控件的输入值是否匹配正则表达式指定的模式Cust

11、omValidator自定义验证逻辑来控制要验证的输入控件5.3 效劳器控件验证控件例如验证控件例如 textBoxName requiredFieldValidatorName compareValidatorArr-iveType compareValidatorLea-veType textBoxArriveDate compareValidatorArri-veNow textBoxLeaveDate compareValidatorLea-veArrive buttonOK 5.3 效劳器控件导航控件导航控件表.常用导航控件控件控件说明说明SiteMapPath控件是通过显示一个导航

12、路径的方式来标示当前页在站点中的位置,从而实现站点导航,适于具有分层的网页Menu菜单控件,主要用来创建页面上的显示菜单,可以包含一个主菜单和多个子菜单TreeView用于以树形结构显示分层数据5.3 效劳器控件SiteMapPathSiteMapPath控件例如控件例如SiteMapPathSiteMapPath控件的站点导航,是通过自动读取控件的站点导航,是通过自动读取WebWeb应用程序的根目录下的站点地图数据来实现的,应用程序的根目录下的站点地图数据来实现的,而不需要编写任何代码完成。但是只有在站点地而不需要编写任何代码完成。但是只有在站点地图中列出的页才能在图中列出的页才能在Site

13、MapPathSiteMapPath控件中显示导航控件中显示导航数据;数据;5.3 效劳器控件MenuMenu控件例如控件例如5.3 效劳器控件TreeViewTreeView控件例如控件例如 treeViewMain ExpandDepth:1 LevelStyle: 设置3种不同的 TreeNodeStyle textBoxName ReadOnly:true 5.4 用户控件和自定义控件用户控件和自定义控件用户控件和自定义控件在中,系统自带的效劳器控件为应用程序开发提供在中,系统自带的效劳器控件为应用程序开发提供了诸多便利。在应用程序开发中,除了内置的了诸多便利。在应用程序开发中,除了内

14、置的HTMLHTML效劳器控件和效劳器控件和WebWeb效劳器控件之外,用户还可效劳器控件之外,用户还可以根据自己的实际需要,编写自定义的控件。以根据自己的实际需要,编写自定义的控件。5.4 用户控件和自定义控件用户控件用户控件用户控件使开发人员能够根据应用程序的需求,方用户控件使开发人员能够根据应用程序的需求,方便的定义和编写控件。便的定义和编写控件。开发所使用的编程技术与编写开发所使用的编程技术与编写WebWeb窗体的技术相同,窗体的技术相同,只要开发人员对控件进行修改,就可以将使用该只要开发人员对控件进行修改,就可以将使用该控件的页面的所有控件都进行更改。控件的页面的所有控件都进行更改。

15、用户控件的扩展名为用户控件的扩展名为“ascx“ascx,用户控件不能单独,用户控件不能单独作为页面运行,必须嵌入到作为页面运行,必须嵌入到aspxaspx页面中,或者嵌页面中,或者嵌入到其他用户控件中使用。入到其他用户控件中使用。在一个大系统中,如网站的导航、网页的头部和底在一个大系统中,如网站的导航、网页的头部和底部可以做成用户控件,这样可以增强页面之间的部可以做成用户控件,这样可以增强页面之间的藕合性,一个用户控件藕合性,一个用户控件* *.ascx.ascx都作为一个独立的都作为一个独立的功能块。需要修改某一功能时,只需要修改相应功能块。需要修改某一功能时,只需要修改相应的的* *.a

16、scx.ascx文件。文件。5.4 用户控件和自定义控件创立用户控件创立用户控件用户控件是以用户控件是以.ascx.ascx为后缀名的,在为后缀名的,在Visual Studio Visual Studio 20212021中,可以通过【添加新项】选项创立一个用中,可以通过【添加新项】选项创立一个用户控件户控件5.4 用户控件和自定义控件自定义控件自定义控件用户控件能够执行很多操作。并实现一些功能,但用户控件能够执行很多操作。并实现一些功能,但是在复杂的环境下,用户控件并不能够到达开发是在复杂的环境下,用户控件并不能够到达开发人员的要求,是因为用户控件大局部都是使用现人员的要求,是因为用户控件

17、大局部都是使用现有的控件进行组装,编写事件来到达目的。于是有的控件进行组装,编写事件来到达目的。于是,允许开发人员编写自定义控件实现复杂的功能,允许开发人员编写自定义控件实现复杂的功能。自定义控件与用户控件不同,自定义控件需要定义自定义控件与用户控件不同,自定义控件需要定义一个直接或间接从一个直接或间接从ControlControl类派生的类。自定义控类派生的类。自定义控件将会编译成件将会编译成DLLDLL文件,可以添加到工具箱中,然文件,可以添加到工具箱中,然后直接在页面上使用后直接在页面上使用5.4 用户控件和自定义控件创立自定义控件创立自定义控件5.4 用户控件和自定义控件用户控件和自定

18、义控件比较用户控件和自定义控件比较用户控件用户控件自定义控件自定义控件使用率开发的应用程序只适合小范围的使用开发的自定义控件能够在大部分的应用程序中被应用创建技术以.ascx形式声明并创建,开发过程也比较简单,并且有设计器提供设计支持从System.Web.UI.Control派生而来,开发过程稍微复杂,没有设计器提供设计支持生成方式以.ascx的形式呈现,无法在工具箱显示,也不能增加自定义属性以DLL的形式呈现,通过添加引用,能够在“工具箱”中显式,能够像服务器控件一样拖动到页面,并且能够通过编程开发增加自定义属性5.5 性能优化性能是成功网站或工程的一个关键因素。对于应用程序,可以从以下几

19、个方面提高性能。页面和效劳器控件处理状态管理数据访问Web应用程序编码5.5 性能优化页面和效劳器控件处理页面和效劳器控件处理1 1防止不必要的到效劳器的往返行程。防止不必要的到效劳器的往返行程。在某些情况下,可以使用在某些情况下,可以使用 Microsoft Ajax Microsoft Ajax 和局部和局部页面呈现功能来完成浏览器代码中的任务,而无页面呈现功能来完成浏览器代码中的任务,而无需执行完全回发。例如,可以先使用需执行完全回发。例如,可以先使用 Ajax Ajax 功能功能来验证浏览器中的用户输入,然后再将输入提交来验证浏览器中的用户输入,然后再将输入提交到效劳器。到效劳器。如果

20、开发自定义效劳器控件,考虑将它们设计为针如果开发自定义效劳器控件,考虑将它们设计为针对它们的某些功能来呈现客户端脚本。这样可以对它们的某些功能来呈现客户端脚本。这样可以显著减少向显著减少向 Web Web 效劳器发送信息的次数。效劳器发送信息的次数。5.5 性能优化页面和效劳器控件处理页面和效劳器控件处理2 2使用使用 Page Page 对象的对象的 IsPostBack IsPostBack 属性来防止不必要属性来防止不必要的处理如果只是在首次请求页时必须运行代码,的处理如果只是在首次请求页时必须运行代码,防止在每次回发时都运行代码。防止在每次回发时都运行代码。除非有特殊的原因要关闭缓冲,

21、否那么使其保持翻除非有特殊的原因要关闭缓冲,否那么使其保持翻开状态开状态 禁用禁用 ASP.NET ASP.NET 网页的缓冲会导致大量的网页的缓冲会导致大量的性能开销。性能开销。5.5 性能优化状态管理状态管理1 1仅在必要时才保存效劳器控件视图状态仅在必要时才保存效劳器控件视图状态 视图状态视图状态使效劳器控件可以在往返行程中重新填充属性值使效劳器控件可以在往返行程中重新填充属性值,而无需编写代码。,而无需编写代码。 但是,由于在隐藏形式的字但是,由于在隐藏形式的字段中,视图状态会传入和传出效劳器,因此它会段中,视图状态会传入和传出效劳器,因此它会影响性能和页大小。影响性能和页大小。默认情

22、况下,已对所有效劳器控件启用了视图状态默认情况下,已对所有效劳器控件启用了视图状态。 假设要对某个控件禁用它,将该控件的假设要对某个控件禁用它,将该控件的 EnableViewState EnableViewState 属性设置为属性设置为 false false asp:datagrid EnableViewState=false datasource=. runat=server/ 可以使用可以使用 Page Page 指令对某个页禁用视图状态指令对某个页禁用视图状态 5.5 性能优化状态管理状态管理2 2当不使用会话状态时禁用它。假设要对某个页禁用当不使用会话状态时禁用它。假设要对某个页

23、禁用会话状态,将会话状态,将 Page Page 指令中的指令中的 EnableSessionState EnableSessionState 特性设置为特性设置为 false false 为应用程序选择适宜的会话状态提供程序。为应用程序选择适宜的会话状态提供程序。ASP.NET ASP.NET 提供了多种方法用来存储应用程序的会提供了多种方法用来存储应用程序的会话数据。话数据。 其中包括进程内会话状态、作为其中包括进程内会话状态、作为 Windows Windows 效劳的进程外会话状态以及效劳的进程外会话状态以及 SQL SQL Server Server 数据库中进程外会话状态。数据库中

24、进程外会话状态。 每种方法都每种方法都有自己的优点,但进程内会话状态是目前为止速有自己的优点,但进程内会话状态是目前为止速度最快的方法。度最快的方法。5.5 性能优化数据访问数据访问1 1将将 SQL Server SQL Server 和存储过程用于数据访问。和存储过程用于数据访问。使用托管使用托管 SQL Server SQL Server 提供程序时,可通过尽可能提供程序时,可通过尽可能使用编译的存储过程而不是使用使用编译的存储过程而不是使用 SQL SQL 命令来获得命令来获得额外的性能提升。额外的性能提升。将将 SqlDataReader SqlDataReader 类用于快进只读数据游标类用于快进只读数据游标 SqlDataReader SqlDataReader 类创立从类创立从 SQL Server SQL Server 数据库检数据库检索的仅向前、只读数据流。索的仅向前、只读数据流。 SqlDataReader SqlDataReader 类使用类使用 SQL Server

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论