版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2022年3月4日第16章 Web服务创建和使用服务创建和使用 主讲教师: 杨建军教学目标 本章主要介绍了如何用ASP.NET编写Web应用程序,如何使用Web控件以及如何通过Web窗体读写数据库。Web应用程序,是一种以网页形式为界面的应用程序,Web应用程序可以利用网络的强大功能为用户提供服务。ASP.NET为这种类型应用程序的开发提供了一个强大的平台。 教学重点lASP.NET概述l使用ASP.NET创建Web应用lWeb 窗体校验控件使用l使用Web 窗体访问数据 15.1 ASP.NET概述概述 ASP.NET技术可用于动态创建带有服务器端代码的Web页面。 它是ASP (Activ
2、e Server Page)的后续版本。一个ASP.NET页面文件可以被拆分成两个独立的部分:一个是.aspx文件,它实际上是一个HTML文件,含HTML代码和控件信息,定义了一个页面的布局和外观;另一个是.aspx.cs文件,每个.aspx文件通常都有一个对应的.aspx.cs文件,包含实现程序功能的代码,如事件处理程序和辅助方法等。 在ASP.NET Web应用程序项目中“*.aspx”和“*.cs”文件的内容,前者与普通的.htm文件格式非常相似,而后者则与C#应用程序的格式相似。 ASP .NET介绍 ASP .NET的总体构架图 ASP.NET 工作原理 使用ASP.NET在客户系统
3、上创建Web应用程序,只需一个简单的Web浏览器 在服务器系统上,需要ASP.NET运行库 15.2 使用使用ASP.NET创建创建Web应用应用 使用ASP.NET创建Web应用非常方便。因为ASP.NET中已定义了很多内置对象,我们可以直接使用。 15.2.1 ASP.NET的内建对象的内建对象 尽管ASP .NET的面向对象的设计和基础代码在本质上不同于ASP,但ASP中许多常用的关键字和运算符在ASP .NET中仍保留了下来 lPage对象用来与扩展名为.aspx的文件相关联。这些文件在运行时创建为Page对象,并缓存在服务器内存中。Page对象充当页中所有服务器控件的命名容器 lRe
4、sponse对象是HttpResponse类的实例。当用户请求页面时,ASP .NET将自动创建该对象 lRequest对象是HttpRequest类的实例。当用户请求页面时,ASP .NET也将自动创建Request对象 lApplication对象是HttpApplicationState类的实例。它提供对所有会话的应用程序范围的方法和事件的访问 lSession对象是HttpSessionState类的实例。它提供了对会话状态值以及会话级别设置和生存期管理方法的访问 Web窗体页指令 Web窗体页指令用来指定当请求ASP .NET页和用户控件时使用的设置 指 令说 明Page该指令定义
5、ASP .NET 页分析器和编译器使用的页的特定属性。它只能包含在.aspx 文件之中,且每个.aspx文件之中只能有一个 Page指令Control该指令定义ASP .NET页分析器和编译器使用的用户控件(.ascx文件)特定的属性。只能包含在.ascx文件之中。且每个.ascx文件中只能有一个Control指令Assembly该指令在编译过程中将程序集链接到当前页,以使程序集的所有类和接口都可用在该页上Implements该指令指示当前页或用户控件实现指定的.NET框架接口Import该指令将命名空间显式导入到页中,使导入的命名空间的所有类和接口可用于该页。导入的命名空间可以是.NET框架
6、类库或用户定义的命名空间的一部分OutputCache该指令以声明的方式控制ASP .NET页或页中包含的用户控件的输出缓存策略Reference该指令以声明的方式指示另一个用户控件或页源文件应该被动态编译并链接到在其中声明该指令的页Register该指令将别名与命名空间及类名关联起来,以便在自定义服务器控件语法中使用简明的表示法15.2.2构建构建ASP.NET应用程序应用程序 使用ASP.NET创建的一个Web应用程序通常有一个或多个ASP.NET页或者Web窗体、代码文件以及配置文件组成。 一个新的Web应用程序被创建后,系统自动创建的文件中包含以下几个文件: 15.2.2构建构建ASP
7、.NET应用程序应用程序 l WebForm1.aspx文件:这是一个空白的ASP.NET Web窗体页面,通常可将第一个.aspx文件改名为“default.aspx”或“index.aspx”作为Web站点的缺省主页。每个.aspx文件开头的预编译指令指明了对应的代码文件的名称和位置。lAssemblyInfo.cs文件:这是一个普通的源代码文件,其中包含了所有的程序集特性。lGlobal.asax.cs文件:这是应用程序自动启动时被加载的第一个文件,它包含了Application_Start,Session_Start,Application_End,Session_End等几个过程。l
8、Web.config文件:这是ASP.NET应用程序的配置文件。这个文件采用的是XML格式,其中包含了与安全性、缓存管理、页编译等有关的信息。 15.2.3 Web Server控件控件 Web窗体控件与HTML控件或HTML表单相比较,有一个重要的区别,Web窗体控件是服务器端控件,是在服务器端生成。 所以,添加到窗体上的Web窗体控件也统称为Server控件。Server控件与普通网页上使用的标准HTML控件相似,只是它们编程更加灵活。大多数Server控件都揭示了事件处理程序、方法和属性,服务器上的代码可以动态地执行和修改它们。 Server控件控件是基于更加抽象的、具有更强的面向对象特
9、征的设计模型,它提供了比HTML服务器种类更多、功能更强大的控件集合。它属于System.Web.UI.WebControl名称空间,所有的ASP.NET 服务器控件类都是从该名称空间的基类WebControl派生的。 登录控件 ASP.NET 2.0提供了一些新的安全控件,使用预定义的登录控件不需手动定制表单,即可完成登录及注册等功能 安 全 控 件说 明LoginLogin控件是一个复合控件,包含要求用户输入用户名和密码的控件LoginStatusLoginStatus控件根据用户是否登录,包含登录或注销的超链接 LoginNameLoginName控件显示登录的用户名 LoginView
10、LoginView控件根据用户是否登录显示不同的内容PasswordRecoveryPasswordRecovery是一个复合控件,用于重新设置密码。根据安全配置,要求用户回答以前设置的问题,或通过电子邮件发送密码 ChangePasswordChangePassword是一个复合控件,允许登录的用户更改密码CreateUserWizardCreateUserWizard是一个创建新用户向导,可以把用户信息写入MembershipProvider 15.2.4创建和使用主题创建和使用主题 利用【样式生成器】可以设置窗体的样式,但这样定义的样式只能应用于一个窗体。商业网站往往包含数十甚至数百个窗
11、体,怎样才能保持这些个窗体在格式上的一致性,这就是“主题”的作用了。 所谓主题,就是一系列定义好的属性、样式和图像。我们可以选择将它们应用于特定网页上的控件,也可以选择将它们应用于整个网站的所有网页。 15.2.4创建和使用主题创建和使用主题 1.定义主题定义主题 主题由一组元素组成:外观、级联样式表 (CSS)、图像和其他资源。 主题是在网站或 Web 服务器上的特殊目录中定义的。这个特殊目录的名称为App_Themes。 主题将至少包含一系列的外观文件。外观文件具有文件扩展名 .skin,它包含各个控件的属性设置。控件外观设置类似于控件标记本身,但只包含要作为主题的一部分来设置的属性。 1
12、5.2.4创建和使用主题创建和使用主题 有两种类型的控件外观:“默认外观”和“已命名外观”。 当向网页应用主题时,默认外观自动应用于同一类型的所有控件。如果控件外观没有 SkinID 属性,则是默认外观。已命名外观是设置了SkindID属性的控件外观。 要创建一个主题,首先为网站添加一个App_Themes文件夹;再为主题创建一个子文件夹,在这个子文件夹中创建一个或多个外观文件来定义控件的属性。 15.2.4创建和使用主题创建和使用主题 2.应用主题应用主题 为一个主题创建好一系列的外观文件之后,至少可以采用两种方式将一个主题应用于Web窗体:可以设置每个页的Page属性,也可以使用Web配置
13、文件,将主题全局性的应用于所有网页。15.3 Web 窗体校验控件使用窗体校验控件使用 和Windows应用程序一样,校验用户输入的内容是否符合一些要求是系统的一个重要内容。对Web应用程序来说,还应该考虑是在服务器端还是在客户端(浏览器)进行校验。 进行数据校验有两种方式,分别是服务端校验和客户端校验,这是两种完全不同的方式。 在ASP.NET中,提供了验证控件来检查用户输入的有效性,而不需要程序员编写大量的验证函数 验证控件创建了客户端JavaScript代码,在客户端上验证输入,还创建了服务器端代码,在服务器上验证输入。把验证属性EnableClientScript设置为false,可以
14、关闭JavaScript。设置Page类的ClientTarget属性,也可以关闭JavaScript,而不需要对每个验证控件执行改变属性值的操作。15.3 Web 窗体校验控件使用窗体校验控件使用 和Windows应用程序一样,校验用户输入的内容是否符合一些要求是系统的一个重要内容。对Web应用程序来说,还应该考虑是在服务器端还是在客户端(浏览器)进行校验。 进行数据校验有两种方式,分别是服务端校验和客户端校验,这是两种完全不同的方式。 在ASP.NET中,提供了验证控件来检查用户输入的有效性,而不需要程序员编写大量的验证函数 验证控件创建了客户端JavaScript代码,在客户端上验证输入
15、,还创建了服务器端代码,在服务器上验证输入。把验证属性EnableClientScript设置为false,可以关闭JavaScript。设置Page类的ClientTarget属性,也可以关闭JavaScript,而不需要对每个验证控件执行改变属性值的操作。15.3 Web 窗体校验控件使用窗体校验控件使用 ASP.NET中提供了一组功能强大的数据验证组件,这些控件减轻了类似于ASP时代开发人员编程的复杂步骤。控件共有如下六种。 RequiredFieldValidator CompareValidator RangeValidator RegularExpressionValidator
16、CustomValidator ValidationSummary15.4 使用使用Web 窗体访问数据窗体访问数据 在ASP.NET中通过使用ADO.NET实现数据库访问的操作与Windows应用程序对数据库的访问基本一致,可以实现对数据库数据的读取、更改、添加与删除。 15.4.1Web窗体的窗体的GridView控件使用控件使用 Web窗体的也有一个类似Windows窗体的DataGridView控件的控件,称为GridView控件。在Web窗体应用中,客户端应用程序(或浏览器)一般与要用的数据库距离很远,这就意味着必须高效的利用网络带宽。不能浪费资源获取大量用户不想要的数据。Web窗体
17、GridView控件支持分页技术。 Web窗体GridView控件也能在数据库断开连接时使用。可以创建一个SqlDataSource对象连接到一个数据库,填充一个DataSet,然后断开与数据库的连接。可以将SqlDataSource控件中的DataSet对象绑定到一个GridView控件。 15.4.2 查询数据查询数据 在ASP.NET中访问数据库与在Windows中访问数据库的操作步骤基本相同:l创建DataSet(数据集合)对象,以存放从数据库中读取的记录。l创建与数据库的连接,即创建SqlDbConnection或OleDbConnection(Ole数据库连接)对象,建立程序与数据库的数据传输通道。l创建SqlDbDataAdapter或OleDbDataAdap
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025重庆忠县人民法院招聘派遣制司法警察2人笔试考试备考试题及答案解析
- 2025四川成都医学院招聘事业编制辅导员10人考试笔试参考题库附答案解析
- 2025河北张家口市阳原县诚信源泰人力资源有限公司招聘特聘农技推广人员5人笔试考试备考试题及答案解析
- 腌菜池安全生产规范讲解
- 2026届河北省保定市化学高一第一学期期末考试模拟试题含解析
- 临床医学妇产科学试题及答案2025年版
- 2025年车间级安全教育培训试题及答案
- 2025年知识技能竞赛监理题库及答案
- 【2025年】安全生产标准化建设事故预防考试题库及答案
- 2025年度安全生产“大学习、大培训、大考试”考前测试题及答案
- 职业暴露应急预案及处理流程
- 鄂尔多斯市普通住小区物业管理服务等级标准和收费指导价格
- 胆总管结石伴急性化脓性梗阻性胆管炎的护理查房
- 六年级数学上册第一单元测试卷及答案
- 附录C.1 陆上风电、光伏建设项目质量验收范围划分1
- 国开电大《当代中国政治制度》形考任务1-4答案
- 增值服务承诺书
- 郭德纲于谦经典相声《我要穿越》台词
- 深圳市龙岗区2023年九年级上学期《数学》期中试题与参考答案
- 无违法犯罪记录证明申请表(个人)
- 四川省绵阳市绵阳中学英才学校2022-2023学年小升初数学自主招生备考卷含答案
评论
0/150
提交评论