《程序设计完整版课件全套ppt整套电子教案最全电子讲义(最新).ppt》由会员分享,可在线阅读,更多相关《程序设计完整版课件全套ppt整套电子教案最全电子讲义(最新).ppt(361页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、ASP.NET Web 程程 序序 设设 计计12知识准备Web1.网页设计网页设计2.面向对象语言面向对象语言3.网络网络+数据库数据库31.什么是Web程序?随着随着Internet的的发展,我们可以发展,我们可以利用浏览器实现利用浏览器实现很多功能:浏览很多功能:浏览网页新闻、上传网页新闻、上传下载资源,网上下载资源,网上报名,信息查询报名,信息查询等等Web程序程序Web页面也叫做页面也叫做网页网页简单说来,简单说来,Web程序就是可以在程序就是可以在网页上运行的程网页上运行的程序序42.Web程序的发展C/S模式模式 B/S模式模式客户客户/服务器模式服务器模式胖客户胖客户/瘦服务器
2、瘦服务器QQ、传奇、瑞、传奇、瑞星星浏览器浏览器/服务器模服务器模式式瘦客户瘦客户/胖服务器胖服务器只需浏览器就可只需浏览器就可完成操作完成操作5C/S模式与B/S模式B/S模式与传统的模式与传统的C/S模式比较:模式比较:1.体现了集中式计算的优越性:具有良好的开放性,体现了集中式计算的优越性:具有良好的开放性,利用单一的访问点,用户可以在任何地点使用系统;利用单一的访问点,用户可以在任何地点使用系统;2.用户可以跨平台以相同的浏览器界面访问系统;因用户可以跨平台以相同的浏览器界面访问系统;因为在客户端只需要安装浏览器,取消了客户端的维为在客户端只需要安装浏览器,取消了客户端的维护工作,有效
3、地降低了整个系统的运行和维护成本。护工作,有效地降低了整个系统的运行和维护成本。6Web术语Web术语BDAWeb服务器服务器浏览器(浏览器(browser)HTTP协议协议DNS域名解析域名解析BCEFIP地址地址URL统一资源定位统一资源定位7AWeb服务器服务器Web服务器又称服务器又称WWW服务器、网站服务器服务器、网站服务器等等将本地的信息以网页文件的形式组织起来,为将本地的信息以网页文件的形式组织起来,为用户在用户在Internet上提供浏览及连接服务。上提供浏览及连接服务。该服务器需正常安装操作系统,如该服务器需正常安装操作系统,如UNIX、Linux或或Window等网络操作系
4、统,还必须等网络操作系统,还必须安装专门的信息服务器程序,如安装专门的信息服务器程序,如IIS、Apache、Tomcat等。等。8浏览器(浏览器(browser)浏览器是浏览器是Web客户端程序客户端程序它可以与它可以与Web服务器建立连接,用户通过输入服务器建立连接,用户通过输入链接地址确定网页信息资源的位置,从而获取链接地址确定网页信息资源的位置,从而获取网页信息,并显示给用户。网页信息,并显示给用户。目前使用最多的浏览器有:目前使用最多的浏览器有:IE(Internet Explorer)、Navigator、Mozilla FireFox、Maxthon、Opera和和Mac OS中
5、的中的Safari同一个网页在不同浏览器上可能会显示不同的同一个网页在不同浏览器上可能会显示不同的效果(效果(增加网页开发的复杂性增加网页开发的复杂性)B9HTTP协议协议为为了了使使网网页页资资源源传传输输能能够够高高效效率率地地完完成成,采采用用 HTTP 协议来传送一切必须的信息。协议来传送一切必须的信息。HTTP 有两类报文:有两类报文:请求报文请求报文从客户向服务器发送请求报文。从客户向服务器发送请求报文。响应报文响应报文从服务器到客户的回答。从服务器到客户的回答。C10DIP地址地址网网络络上上唯唯一一标标示示一一台台机机器器的的地地址址。进进行行通通信信必必须获取目标机器的须获取
6、目标机器的IP地址。地址。采用点分十进制表示:采用点分十进制表示:192.168.200.2为为方方便便记记忆忆,可可以以为为服服务务器器注注册册域域名名,如如DNS用用于于将将域域名名解解析析成成对对应应IP地地址址,供供通通信信程程序使用序使用EDNS域名解析域名解析11F统一资源定位统一资源定位URL统一资源定位符统一资源定位符 URL 是对可以从因特网上得到是对可以从因特网上得到的资源的位置和访问方法的一种简洁的表示。的资源的位置和访问方法的一种简洁的表示。URL 中的字符对大写或小写没有要求。中的字符对大写或小写没有要求。:/:/v使用使用 HTTP 的的 URL 的一般形式的一般形
7、式 http:/:/12Web技术简介技术简介HTMLXHTMLCSSWeb相关技术相关技术 Web技术几乎技术几乎汇聚了当前信汇聚了当前信息处理的所有息处理的所有技术及手段,技术及手段,并在不断的发并在不断的发展之中展之中我们只讨论主我们只讨论主流技术的组成流技术的组成JavascriptDOMCGIASPPHPJSPXMLAJAXASP.NETWeb应用系统开发环境VS2013 1.NET Framwork 4.5 2.SQL Sever 2012 Express 3.LINQ 4.虚拟服务器13Web应用系统运行环境IIS服务器.NET Framwork 4.5 SQL Sever 20
8、12 Express14WEB程序设计WEB编程不是一件简单的任务。编程不是一件简单的任务。传统的应用程序开发拥有许多结构化语言支持的完好传统的应用程序开发拥有许多结构化语言支持的完好编程模型,而编程模型,而WEB应用程序开发混合了标记语言、应用程序开发混合了标记语言、脚本语言和服务器平台。脚本语言和服务器平台。15Web程序设计一般都使用一般都使用ASP.NET、JSP或或PHP。ASP.NET由由Microsoft提出,易学易用、开发效率高,提出,易学易用、开发效率高,可配合任何一种可配合任何一种.NET语言进行开发。语言进行开发。JSP由由Sun提出,提出,需配合使用需配合使用Java语
9、言。语言。PHP的优点是开源,缺点是缺的优点是开源,缺点是缺乏大公司支持。乏大公司支持。JSP和和PHP相比较相比较ASP.NET,要难学。,要难学。国内外越来越多的软件公司,开始应用国内外越来越多的软件公司,开始应用ASP.NET技术技术进行进行Web应用系统开发。应用系统开发。16ASP与PHP1ASP ASP 即Active Server Pages,它是微软开发的一种类似HTML、Script(脚本)与CGI(公用网关接口)的结合体,它没有提供自己专门的编程语言,而是允许用户使用许多已有的脚本语言编写ASP的应用程序 2PHP PHP 即Hypertext Preprocessor(超
10、文本预处理器),PHP 是一种HTML内嵌式的语言,PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格类似于C语言,现在被很多的网站编程人员广泛的运用。17JSP与ASP.NET1JSP JSP 即即Java Server Pages,它是由,它是由Sun Microsystem公司于公司于1999年年6月推出的新技术,月推出的新技术,JSP技术有点类似技术有点类似ASP技术,它是在传统的网页技术,它是在传统的网页HTML文文件(件(*.htm,*.html)中插入)中插入Java程序段程序段(JavaScript),从而形成),从而形成JSP文件
11、文件(*.jsp)2ASP.NET ASP.NET不是不是 Active Server Page(ASP)的一的一个简单升级版本,而是一种建立在通用语言上的程序构个简单升级版本,而是一种建立在通用语言上的程序构架,能被用于一台架,能被用于一台Web服务器来建立强大的服务器来建立强大的Web应用应用程序程序 18课程特点与要求采用采用ASP.NET 4.5和和C#强化实例教学强化实例教学注重应用能力培养注重应用能力培养19内容组织 第第1章简要介绍了章简要介绍了ASP.NET 4.5 的发展历史以及主的发展历史以及主要特点,并且讲解了要特点,并且讲解了Visual Studio Express
12、2013 安装方法和开发安装方法和开发ASP.NET应用程序的一般步骤。应用程序的一般步骤。第第2章章介绍了介绍了XHTML5元素、页面模型、实现布局元素、页面模型、实现布局的的CSS3、提高用户体验的、提高用户体验的JavaScript、标准的数、标准的数据交换格式语言据交换格式语言XML;本章还详细地讲述了配置文;本章还详细地讲述了配置文件件Web.config的配置方法。这对读者理解的配置方法。这对读者理解ASP.NET的工作模式非常重要。的工作模式非常重要。2021内容组织(续)第第3章给出了章给出了C#的浓缩版,并且在介绍时直接与的浓缩版,并且在介绍时直接与ASP.NET 4.5结合
13、,还介绍了结合,还介绍了ASP.NET 4.5页面调页面调试技术。试技术。第第4章介绍了章介绍了Web控件的种类和属性,包括标准控件、控件的种类和属性,包括标准控件、验证控件、登录控件、导航控件的使用方法,控件为验证控件、登录控件、导航控件的使用方法,控件为开发人员提供了高效的应用程序开发方法,开发人员开发人员提供了高效的应用程序开发方法,开发人员无须具有专业知识就能够实现复杂的应用操作,是开无须具有专业知识就能够实现复杂的应用操作,是开发发ASP.NET应用程序的基础。应用程序的基础。2223第第5章介绍了章介绍了ASP.NET中常用的内置对象,包括中常用的内置对象,包括Request、Re
14、sponse、Session、Application和和Server的主要方法和属性,并讲解了的主要方法和属性,并讲解了Cookie对对象的使用方法。熟练掌握这些内置对象,可以开发出象的使用方法。熟练掌握这些内置对象,可以开发出功能强大的应用程序。功能强大的应用程序。242526内容组织(续)第第6章介绍了介绍网站导航技术。介绍了章介绍了介绍网站导航技术。介绍了ASP.NET中常用的网站导航控件,能够合理的建立网站地图。中常用的网站导航控件,能够合理的建立网站地图。第第7章介绍了章介绍了ASP.NET中的主题、母版、用户控件,中的主题、母版、用户控件,以及利用这些技术创建具有统一风格和个性化网
15、站的以及利用这些技术创建具有统一风格和个性化网站的方法。方法。27第第8章介绍数据的访问,首先介绍使用章介绍数据的访问,首先介绍使用ADO.NET进进行数据库访问的方法。主要包括行数据库访问的方法。主要包括ADO.NET的数据的数据提供者提供者(Data Provider)、SQL Server 2012 Express开发环境和数据集开发环境和数据集(DataSet)的基础知识等,的基础知识等,其次介绍了其次介绍了LINQ的基本知识和如何使用的基本知识和如何使用LINQ进行进行数据库操作,包括如何将表生成实体类,了解数据库操作,包括如何将表生成实体类,了解DataContext类,如何使用类
16、,如何使用LINQ to SQL,并利,并利用用LINQ技术完成数据的基本查询、添加、删除和修技术完成数据的基本查询、添加、删除和修改。改。28293031第第9章介绍了数据绑定技术、章介绍了数据绑定技术、ASP.NET 4.5提供的提供的各种数据源控件和使用数据源控件连接到各种数据源各种数据源控件和使用数据源控件连接到各种数据源的方法。的方法。3233内容组织(续)第第10章介绍了章介绍了Ajax的基础知识以及的基础知识以及ASP.NET AJAX控件控件这是微软的客户端异步无刷新页面技这是微软的客户端异步无刷新页面技术,在术,在ASP.NET 4.5以前的版本中,已经包含了此以前的版本中,
17、已经包含了此技术框架。技术框架。第第11章综合实例讲解。章综合实例讲解。学习网上书城的总体设计,学习网上书城的总体设计,熟悉系统数据库的设计,掌握用户控件的设计与使用。熟悉系统数据库的设计,掌握用户控件的设计与使用。掌握网站的前台设计和网站的后台管理模块的设计。掌握网站的前台设计和网站的后台管理模块的设计。3435内容组织(续)介绍Internet上广泛调用的Web服务和微软新推出的WCF服务。36373839第第1章章 ASP.NET 4.5运行及开发环境运行及开发环境教学目标1.了解ASP.NET 和.NET Framework;2.熟悉IIS不同版本的安装和配置;3.熟悉Visual S
18、tudio Express 2012 for Web开发环境;4.掌握ASP.NET 4.5网站的创建过程。1.1 ASP.NET概述ASP.NET 是一个统一的Web 开发模型,它包括您使用尽可能少的代码生成企业级 Web 应用程序所必需的各种服务。ASP.NET 作为.NET Framework 的一部分提供。当您编写 ASP.NET 应用程序的代码时,可以访问.NET Framework 中的类。您可以使用与公共语言运行库(CLR)兼容的任何语言来编写应用程序的代码,这些语言包括 Microsoft Visual Basic、C#、JScript.NET 和 J#。使用这些语言,可以开发
19、利用公共语言运行库、类型安全、继承等方面的优点的 ASP.NET 应用程序。1.2.NET Framwork.NET Framework 是以一种采用系统虚拟机运行的编程平台,以通用语言运行库(Common Language Runtime)为基础,支持多种语言(C#、VB、C+、Python等)的开发。NET也为应用程序接口(API)提供了新功能和开发工具。这些革新使得程序设计员可以同时进行Windows应用软件和网络应用软件以及组件和服务(web服务)的开发。.NET提供了一个新的反射性的且面向对象程序设计编程接口。.NET设计得足够通用化从而使许多不同高级语言都得以被汇集。.NET Fr
20、amework 中的所有语言都提供基类库(BCL)。.NETFramework4.0此版本不支持 Windows 2000于2010年4月12日推出,.NET Framework 4.0主要增加了并行支持。.NETFramework4.5此版本不支持 Windows 2000、Windows XP发行于2012年8月16日,是支持生成和运行下一代应用程序和 Web 服务的内部 Windows 组件。1.3 IISIIS(Internet Information Server,互联网信息服务)是一种Web(网页)服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用
21、于网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。IIS的版本与不同的操作系统有关,如Windows Server2003 对应IIS 6.0;Windows 7旗舰版对应IIS 7.5。注意:注意:在VS 2012开发环境中建立网站时,可以使用内含的IIS Express或“Visual Studio开发服务器”运行网站,不需要额外安装操作系统中的IIS。1.4 ASP.NET开发开发环境环境Visual Studio 2013 是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、
22、集成开发环境(IDE)等等。所写的目标代码适用于微软支持的所有平台,包括Microsoft Windows、Windows Mobile、Windows CE、.NET Framework、.NET Compact Framework和Microsoft Silverlight 及Windows Phone等。1.5 小小 结结本章主要介绍ASP.NET和.NET Framework,为建立ASP.NET 4.5网站提供了基础。ASP.NET 4.5是一个逐步演进的版本,支持LINQ数据访问技术、Ajax页面局部刷新技术、MVC开发模式、JavaScript开发,同时在利用HTML5和CSS3
23、进行页面设计方面有很大的进步。IIS为ASP.NET 4.5提供了运行环境,通过建立不同的网站或应用程序使得在同一台Web服务器上运行不同的站点成为可能。利用VSEW 2012,可以方便地实现ASP.NET 4.5网站开发。第第3章章 C#和和ASP.NET 4.5教学目标教学目标1.掌握C#常用数据类型的格式及声明方法;2.掌握C#流程控制语句的格式及基本编程方法;3.能结合ASP.NET 4.5页面创建简单的类4.掌握ASP.NET 4.5页面的调试方法。3.1 C#概述概述C#专门为.NET量身打造的一种全新的编程语言,是一种易于使用、功能强大、表达力丰富的全新的程序设计语言,并且现在很
24、多的大型网站都在使用C#进行程序设计,它有如下的特点:(1)它是在Java、C+的基础上设计的一种新的语言,语法和C+、Java语言都比较相似。(2)面向组件(component-oriented):自包含、自描述。通过属性(property)、方法(method)和事件(event)来提供编程模型;并提供了关于组件的声明性信息的特性(attribute);而且这些内容可以通过代码直接编写。(3)它继承了C+的优异功能,去除了在.NET环境中没有用处的类型定义、模板等功能易于使用。(4)效率大大提高(5)在C+和Java的基础上设计的,完全面向对象。命名空间用于组织.NET Framework
25、提供的几千个类。作为组织类的逻辑单元,命名空间即成了应用程序的内部组织形式,也成了应用程序的外部组织形式。使用命名空间可以解决类名冲突问题。513.2 Framework命名空间 利用using语句使用命名空间,如“using system;”表示导入system命名空间。导入命名空间后使得要访问包含的类时可省略命名空间。例如,若没有使用“using system;”语句,则“string strNum=100;”这个语句就会出现编译错误,此时就应该用“System.String strNum=100;”代替。523.2 Framework命名空间(续)System:提供基本类,如提供字符串操
26、作的String类。System.Configuration:提供处理配置文件中数据的类,如能获取web.config文件中数据库连接字符串的ConnectionStringSettings类。System.Data:提供对ADO.NET类的访问,如提供数据缓存的DataSet类。System.Ling:提供使用LINQ进行查询的类和接口,如包含标准查询运算符的Queryable类。53ASP.NET 3.5页面的常用命名空间 System.Web:提供使浏览器与服务器相互通信的类和接口,如用于读取客户端信息的HttpRequest类。System.Web.Security:提供在Web服务器
27、实现ASP.NET安全性的类,如用于验证用户凭据的MemberShip类。System.Web.UI:提供用于创建ASP.NET网站用户界面的类和接口,如每个Web窗体都继承的Page类。54ASP.NET 3.5页面的常用命名空间(续)System.Web.UI.HtmlControls:提供在Web窗体页上创建 HTML服务器控件的类。System.Web.UI.WebControls:提供在Web窗体页上创建Web服务器控件的类,如按钮Button控件类。System.Web.UI.WebControls.WebParts:提供用于创建个性化Web部件页的类和接口,如呈现模块化用户界面的
28、Part类。System.Xml.Linq:提供用于LINQ to XML的类,如获取XML元素的Xelement类。55ASP.NET 3.5页面的常用命名空间(续)良好的编程规范能极大的提高程序的可读性。程序注释命名规则563.3 编程规范 代码间多行注释为“/*/”,单行注释采用“/”。类、方法、属性、接口的注释采用XML文档格式注释。在 中包含较多代码行的结束处应加注释,便于阅读。对分支语句(条件分支、循环语句等)必须编写注释。573.3.1 程序注释Pascal形式:指将标识符的首字母和后面连接的每个单词的首字母都大写,如BackColor。Camel形式:指标识符的首字母小写,而每
29、个后面连接的单词的首字母都大写,如backColor。583.3.2 命名规则常用标识符的大小写方式对应表 59dateConnectionCamel变量名RedValue Pascal只读的静态字段BackColor Pascal属性WebException Pascal异常类typeName Camel参数ValueChanged Pascal事件System.Drawing Pascal命名空间FatalError Pascal枚举值ToString Pascal方法ErrorLevel Pascal枚举类型IDisposable Pascal接口AppDomain Pascal类示例方
30、式标识符示例方式标识符用正确的反义词组命名具有互斥意义的变量或相反动作的函数等,如insert/delete。常量名都要使用大写字母,用下划线“_”分割单词。除局部循环变量外,一般变量名不得取单个字符。类的成员变量(属性所对应的变量)使用前缀“_”。接口命名在名字前加上“I”前缀,如IDisposable。60命名的其它规则 常用控件名简写对照表 控件名控件名简写简写控件名控件名简写简写控件名控件名简写简写LabellblTextBoxtxtRadioButtonrdoButtonbtnLinkButtonlnkbtnImageimgImageButtonimgbtnDropDownListd
31、dlRangeValidatorrvListBoxlstDataGriddgRequiredFieldValidator rfvDataListdlCheckBoxchkCompareValidatorcvCheckBoxListchkls AdRotatorarValidatorSummaryvsRadioButtonListrdoltTabletblRegularExpressionValidatorrevPanelpnlCalendercld61常量声明变量声明 修饰符 局部变量作用范围62常量与变量常量具有在编译时值保持不变的特性,声明时使用const关键字,同时必须初始化。常量用易于
32、理解的名称替代了“含义不明确的数字或字符串”,使程序更易于阅读。常量使程序更易于修改。常量的访问修饰符有public、internal、protected internal和private等。63常量声明符号常量是经过声明的常量,包括常量的名称和它的值。常量声明的格式如下:访问修饰符 Const 数据类型 常量名 =初始值 ;64举例:const double Pi;public const double E=2.7182818284;和变量一样,我们可以同时声明一个或多个给定类型的常量,比如:public const double X=1.0,Y=2.0,Z=3.0;符号常量必须在声明的时候
33、赋初始值,而且一旦初始化以后,就不能再修改了,否则会出现编译错误。65class ConstantTest /常量测试类 public static void Main()const double Pi=3.14;/定义符号常量 Pi,并完成了初始化 Pi=3.1415926;/修改常量的初始值,会产生编译错误 66变量在程序运行过程中值可以变化,必须先声明再使用。变量名长度任意,可以由数字、字母、下划线等组成,但第一个字符必须是字母或下划线。C#是区分大小写的,因此“strName”和“strname”代表不同的变量。67变量声明C#的变量声明语法如下:类型 变量列表类型为C#的内置类型或者
34、自定义类型,变量列表可以包含多个变量,每个变量之间用逗号隔开。如:int a,b,c;另外,也可以在声明变量的同时给变量赋值,比如:int userID=1;string userName=zhangsan;68变量的声明与初始化 变 量 的 修 饰 符 有 public、internal、protected、protected internal、private、static和readonly,C#中将具有这些修改符的变量称为字段,而把方法中定义的变量称为局部变量。注 意:局 部 变 量 前 不 能 添 加 public、internal、protected、protected interna
35、l、private、static和readonly等修饰符。693.4.2 变量声明(续)访问修饰符 public:访问不受限制,任何地方都可访问。internal:在当前程序中能被访问。protected:在所属的类或派生类中能被访问。protected internal:在当前的程序或派生类中能被访问。private:在所属的类中能被访问。70修饰符static使用static声明的变量称静态变量,又称为静态字段。对于类中的静态字段,在使用时即使创建了多个类的实例,都仅对应一个实例副本。访问静态字段时只能通过类直接访问,而不能通过类的实例来访问。readonly使用readonly声明的变
36、量称只读变量,这种变量被初始化后在程序中不能修改它的值。71修饰符(续)块级:作用域范围最小的变量,如包含在if、while等语句段中的变量。这种变量仅在块内有效,在块结束后即被删除。方法级:作用于声明变量的方法中,在方法外即不能访问。对象级:作用于定义类的所有方法中,只有相应的ASP.NET页面结束时才被删除。72局部变量作用范围C#数据类型有值类型和引用类型两种。值类型的变量直接包含它们的数据,而引用类型存储对它们的数据的引用。对于值类型,一个变量的操作不会影响另一个变量;而对于引用类型,两个变量可能引用同一个对象,因此对一个变量的操作可能会影响到另一个变量。733.4 类型 值类型与引用
37、类型的区别值类型的变量直接存放实际数据,引用类型的变量存放的则是数据的地址,即对象的引用。值类型能量直接把变量的值存在堆栈中,引用类型的变量把实际数据的地址保存在堆栈中,而实际数据保存在堆中。74 值类型与引用类型的区别75 字符类型 值 类 型数据类型 引用类型 sbyte byte short ushort int uint long 类 委托 数组 接口 简单类型 结构类型 枚举类型 整数类型 布尔类型 实数类型 Floatdoubledecimalz简单类型:整数类型、布尔类型、字符类型和实数类型。结构类型枚举类型763.4.1 值类型布尔类型表示“真”和“假”,用“true”和“fa
38、lse”表示。注意:布尔类型不能用整数类型代替,如数字0不能代替false。77布尔类型字符类型采用Unicode字符集标准,一个字符长度为16位。字符类型的赋值形式:char x1=A;/一般方式,值为字符Achar x2=中;/值为汉字“中”char x3=x0041;/十六进制方式char x4=u0041;/Unicode方式char x5=;/转义符方式注意:char类型变量声明时必须包含在一对单引号中。78字符类型 常用转义符对应表 转义符对应字符转义符对应字符单引号a感叹号双引号n换行反斜杠r回车0空字符b退格79单精度float类型:常用于科学计算双精度double类型:常用于
39、科学计算十进制decimal类型:常用于金融计算注意:float类型必须在数据后添加“F”或“f”,decimal类型必须添加“M”或“m”,否则编译器以double类型处理。80实数类型 public struct StudentInfopublic string Name;public string phone;public string Address;StudentInfo stStudent;/stStudent为一个StudentInfo结构类型变量 81结构类型 枚举类型是由一组命名常量组成的类型,使用enum关键字声明。枚举中每个元素默认是整数类型,且第一个值为0,后面每个连续
40、的元素依次加1递增。若要改变默认起始值0,可以通过直接给第一个元素赋值的方法。枚举类型的变量在某一时刻只能取枚举中某一元素的值。82枚举类型 枚举类型是一组相关的常量,每个常量都给定了一个描述名。每个枚举类型都有一个相应的整型类型,称为该枚举类型的基础类型(underlying type)。下面的示例声明并使用一个名为Color的枚举类型,该枚举具有三个常数值Red、Green和Blue。enum Color Red,Green,Blue枚举值的访问方式如下:Color myColor=Color.Red;83枚举本实例首先定义枚举类型Color,再声明enTest枚举变量,最后以两种形式输出
41、enTest值。源程序:enum.aspx 84实例3-1 枚举类型变量应用1.using System;2.public partial class chap3_enum:System.Web.UI.Page3.4.enum Color5.Red=1,Green,Blue6.7.protected void Page_Load(object sender,EventArgs e)8.9.Color enTest=Color.Green;10.int i=(int)Color.Green;11.Response.Write(enTest的值为:+enTest+);Response.Write(
42、i的值为:+i);/输出212.13.85枚举成员可以显式的被赋以关联词。enum Season Spring=3,Summer=6,Autumn=9,Winter=12,如果枚举成员没有被显式的赋值,则按系统默认值。enum Season Spring,Summer=6,Autumn=Summer,Winter,86枚举(续)class类型接口类型数组类型委托类型 873.4.2 引用类型作 为 class类 型 之 一 的 object类 型,实 质 是System.Object类的别名。可以将任何类型的数据转化为object类型。88object类型 实质是一种数组,即字符串可看作是一个
43、字符数组。在声明时要求放在一对双引号之间。两种包含转义符的字符串形式string strPath=c:ASPdefault.aspx;string strPath=c:ASPdefault.aspx;运算符可访问字符串中各个字符,如:string strTest=abcdefg;char x=strTest2;/x的值为c 89string类型 通过ToString()转化为string类型string strInt=23.ToString();使用Parse()方法或Convert类的相应方法转化为其它类型 int iString=Int32.Parse(1234);string strDa
44、tetime=Convert.ToString(DateTime.Now);90string类型(续)接口常用来描述组件对外能提供的服务。接口中不能定义数据,只能定义方法、属性、事件等。包含在接口中的方法不定义具体实现,而是在接口的继承类中实现。91接口类型 数组是一组数据类型相同的元素集合。要访问数组中的元素时,可以通过“数组名下标”形式获取,其中下标编号从0开始。数组可以是一维的,也可以是多维的。string s1;int s2=new int 1,2,3;int,s3=new int,1,2,4,5;92数组类型 委托是一种安全地封装方法的类型,类似于C和C+中的函数指针。与C中的函数指
45、针不同,委托是类型安全的。通过委托可以将方法作为参数或变量使用。93委托类型装箱和拆箱是实现值类型和引用类型相互转换的桥梁。装箱的核心是把值类型转化为对象类型,也就是创建一个对象并把值赋给对象。int i=100;object objNum=i;/装箱943.5.3 装箱和拆箱拆箱的核心是把对象类型转换为值类型,即把值从对象实例中复制出来。int i=100;object objNum=i;/装箱int j=(int)objNum;/拆箱 953.4.3 装箱和拆箱(续)请参考教材中的表3-4963.6 运算符If语句注意:条件表达式在判断是否相等时一定要用“=”。switch语句注意:每一个
46、case块的结束必须有break结束语句或goto跳转语句。973.6.2 选择语句实例 3-31.public partial class _3_3_if:System.Web.UI.Page2.3.protected static int Foo(int i)4.5.if(i 0&i=2)9.return 1;10.else 11.return Foo(i-1)+Foo(i-2);12.13.protected void Page_Load(object sender,EventArgs e)14.15.Response.Write(Foo(30).ToString();16.17.本实例
47、根据今天是星期几在页面上输出相应信息。源程序:switch.aspx 99实例 3-4 1.using System;2.public partial class chap3_switch:System.Web.UI.Page3.4.protected void Page_Load(object sender,EventArgs e)5.6.DateTime dtToday=DateTime.Today;/获取今天的系统日期7.switch(dtToday.DayOfWeek.ToString()/枚举值转换为字符型8.9.case Monday:10.Response.Write(星期一);
48、11.break;12.case Tuesday:13.Response.Write(星期二);14.break;15.case Wednesday:16.Response.Write(星期三);17.break;1001.case Thursday:2.Response.Write(星期四);3.break;4.case Friday:5.Response.Write(星期五);6.break;7.default:8.Response.Write(今天可以休息了!);9.break;10.11.12.101For语句Do-While语句while语句根据条件表达式的值,执行0次或多次循环体。
49、Foreach 语句1023.6.3 迭代语句(循环语句)实例3-51.public partial class _3_5for:System.Web.UI.Page2.3.protected void Page_Load(object sender,EventArgs e)4.5.string jieguo=;6.for(int i=1;i=9;i+)7.8.for(int j=1;j=i;j+)9.10.jieguo=jieguo+i.ToString()+*+j.ToString()+=+(i*j).ToString()+ 11.12.jieguo=jieguo+;
50、13.14.Label1.Text=jieguo;15.16.1.public partial class _Default:System.Web.UI.Page 2.3.enum 直辖市4.北京市=3,上海市=2,天津市=4,重庆市=1 5.protected void Page_Load(object sender,EventArgs e)6.7.直辖市 City=直辖市.北京市;8.int order=(int)直辖市.天津市;9.Response.Write(直辖市中天津的人口是第+order+);10.Response.Write(人口最多的城市是+(直辖市)1+);11.for(i