百年教育职业培训中心 百年教育学习服务平台
题库试卷

网页制作与网站建设

来源: 更新时间:

0505《网页制作与网站建设》2019年6月期末考试指导一、考试说明(一)说明满分为100分,考试时间为90分钟,考试形式为开卷。(二)题型及各题型所占分数和相应的答题技巧1.单选题(每题2分,共10

0505《网页制作与网站建设》2019年6月期末考试指导

一、考试说明

(一)说明

满分为100分,考试时间为90分钟, 考试形式为开卷。

(二)题型及各题型所占分数和相应的答题技巧

1.单选题(每题2分,共10题,总计20分)

答题技巧:选择与题干相匹配的答案。可以考虑排除法等选择技巧。

2.多选题(每题5分,共2题,总计10分)

答题技巧:选择与题干相匹配的若干个答案。可以考虑排除法等选择技巧。

3.填空题(每题2.5分,共8题,总计20分)

答题技巧:填写与题干相匹配的答案。对已学知识需要适度的理解与记忆。

4.简答题(每题8分,共3题,总计24分)

答题技巧:需要答出与问题相关的重要知识点(即讲义与课件中的知识点),如需要,可对相关内容展开阐述。

5.综合设计题(每题13分,共2题,总计26分)

答题技巧理解题意,选择与问题相关的设计方法或者是相关的知识点来解答。

二、复习重点内容

第一章 网页基本知识

1、网页相关知识 
①什么是网页文件 
网页目标与构成 
超级链接是网页的最大特点 
网页文件采用HTML语言组织,其文件被称为HTM文件 
②网页文件的组成 
文本、图片、 图像、声音、动画、超级链接等等。 
一个网页由多个文件组成:不可遗漏文件 
以相对方式链接各类对象(以当前网页文件的位置为基础),利用链接把对象组织在一个体系中 
③网页类型 
静态网页,HTML文档——无特效的普通静态页面,代码运行在客户端(用户可见) 
动态网页——交互性、代码运行在服务器(客户端看不到) 
④网页设计流程 
精心规划(风格、布局)——自己知道做什么? 
准备素材 
创建站点 
创建模板页(母版页) 
建立内容页 
测试与发布

第二章 DW设计入门

1、 创建网页的基本流程 
创建站点 
建个简单网页 
批量生成网页——综合性网站 
2、 创建站点 
(1) 首先创建一个名称简单的文件夹 
(2) 创建站点:站点-管理站点-新建 
3、 新建简单网页 
新建网页 
向网页中输入文本 
把图像插入到网页中 
插入超级链接 
设置网页属性 
预览网页 
使用表格 
以表格布局页面 
预览网页

第三章 DreamWeaver插入组件

1、 网页设计的常见组件 
热点链接:插入大幅图像,选中大幅图像,在【属性】面板中,单击某个“地图”标记,在大图上绘制,建立热区;为热区建立超级链接。 
插入书签:光标放在网页的特定位置,插入-命名锚记,给予名称; 
插入Flash对象:插入-媒体-Flash按钮/文档/文本 
插入水平线:插入-HTML-水平线 
背景音乐:在源文件中插入 
Loop=-2     表示无限循环、重复播放 
插入层对象:插入——布局对象——层 
插入滚动字幕: Direction      代表方向 

2、 表单技术 
(1)表单的用途和定义 
所谓HTML表单,就是设计网页过程中使用的交互式区域,其中可能包括文本框、组合框等控件。为人机交互提供支持。 
在表单中,通常在表单末尾或者起始位置处有一组按钮:“提交”和“放弃”。“提交”表示把用户输入的信息提交到特定的处理程序,由处理程序对这些数据进行处理,而“放弃”则表示放弃刚刚输入的数据,不做任何操作。 
多数表单都必须指出能够接受并处理表单数据的程序,即指定表单的Action属性的取值。 
(2)两种类型的表单: 
 服务器端表单:ASP.NET的工具箱控件 
客户端表单: 网页设计过程中直接插入的表单 以为标记 
method属性说明数据传送方式:Post或Get 
action则说明处理表单数据的后台程序的名称 
(3)DW中无表单的跳转菜单 
用途:列表方式显示若干网站,跳转到选定的网站 
方法:插入—表单—跳转菜单。 
直接在对话框中直接输入网站的标题、网址 
通过【属性】面板,直接输入各网站标题及其对应的网址。其中目标项用于控制当前的超级链接将会在什么位置打开。 
(4)DW表单域的类别:文本框、文本域、单选框(互斥,每组互斥项使用相同的变量名)、复选框、列表框 
(5)制作表单的过程: 
先插入表单 
在表单范围内借助表格进行简单的定位 
在单元格中插入表单域,修改表单域属性,表单域的名称是核心 
设置表单的动作(Action)、传输方法(Post)

第四章 HTML标签及样式

1、 认识HTML标记 
(1)HTML文档的基本结构 
(2)HTML标记 
整个HTML文档的标记:  
对网页属性进行描述的区域: 
整个网页的信息区域: 
把希望网页调入时就运行的代码放在“onLoad=”标记后面 
(3)HTML中的常见对象 
表格的相关对象 
层对象 
图片对象 
超级链接对象 
样式对象 
表单相关的对象:表单对象 
文本框对象——Text 
按钮对象——Button 
2、 样式与CSS文档 
(1)什么是样式 
在网页设计中,为提高开发效率,人们通常把若干个格式符组织在一起作为整体使用,这个整体通常被赋予一个独立的名称,这就是样式。 
所谓样式,就是组织在一起的一组格式,这组格式可以通过样式名称直接作用于文字、表格等页面对象,从而快速地设置它们的显示格式。 
(2)样式的存在方式 
内联式: 
级联式:内嵌式标记 样式规则 
链接式:构成独立的样式文件 
直接创建内嵌式样式:直接对页面对象添加格式符,DW会直接创建内嵌式样式 
创建层叠式样式表——CSS文件 
新建CSS文档 
新建——空白页 
新建——示例中的页 
窗口——CSS样式,打开样式面板 
选择某一样式,右单击,选择【编辑】,可以编辑当前的样式 
(3)样式的类型 
标记选择符样式:Body{ font-family:宋体;font-size:30px;} 
类选择符样式:one{ font-family:黑体;font-size:20px;} 
BT{ font-family:黑体;font-size:20px;} 
伪类 样式:a:link{}a:visited{}a:hover{}a:active{} 
元素 样式(ID样式) 
#元素名{}——针对特定的元素设置样式 
(4)常用的样式规则 
Font-family: 字体; 
Font-size:字号; 
Background-image:背景图片; 
background-color:背景色; 
Width:宽度 
Height:高度 
Left:左侧位置; 
Top:位于右侧位置; 
(5)使用CSS样式文件 
附加样式表文档:【格式】→【CSS样式】→【附加样式表】 
利用【属性】面板的【类】来【附加样式表】 
使用已经定义的样式:选中对象 
选择一种样式即可

第五章 布局(表格布局、层布局、嵌入式框架布局、模板)

1、 表格布局 
表格布局是网页设计中最简单的一种布局。即利用表格对网页对象进行定位。 
应用范围:现整个页面的布局;现局部区域的布局;格可以嵌套,因此可实现复杂的布局 
方法: 
直接插入表格法:接向网页中插入表格;表格进行设置 
绘制布局表格过程:新建网页;把DW的工具栏变成”布局“工具栏;选择【布局表格】按钮,在网页中绘制布局表格;选择【布局单元格】按钮,在网页中绘制布局单元格;绘制完毕,【退出】布局状态,返回到标准状态,可设置各个布局单元格的背景等属性。 
2、 层布局 
所谓层,也叫图层,可以看作一小块矩形的、可指定大小的透明薄膜,根据需要可放到任意位置;可根据需要设置层的绝对位置,也可以把层设置为浮动的 
层布局方式: 
创建图层:“插入”à布局对象” à“层” ;设置图层属性——CSS样式表文件 
利用图层实现布局(DIV+CSS): 
两种定位方式:绝对定位——浏览器的宽度固定Position:absolute; Left: xxx px;Top: xxx px;相对定位:——适合不同宽度的浏览器Position:relative;Float: right;  / float:left;   /float:inherit;Width xxx%; height: xxx%; 
利用层实现布局:添加层对象;设置层的位置;为层对象设置背景 
常见层布局的结构与代码: 
DIV结构如下: 
  │body {}                 /*这是一个HTML元素*/ 
  └#Container {}      /*页面层容器*/ 
     ├#Header {} /*页面头部*/ 
     ├#PageBody {} /*页面主体*/ 
     │ ├#Sidebar {} /*侧边栏*/ 
     │ └#MainBody {} /*主体内容*/ 
     └#Footer {} /*页面底部*/ 
实现方法:新建一个html文档,在标签对中写入DIV的基本结构,主要包括:插入DIV;编辑DIV属性 
3、 嵌入式框架布局 
嵌入式框架的定义:嵌入式框架技术是网页设计中用于解决多页面、同结构问题的又一策略。即在网页中开辟一个视窗,用于呈现其他网页文件的内容,即显示一个独立的HTML文档。 
基本思路:在网页设计过程中,首先在网页上开辟一个视窗,并给予这个视窗一个名称,称为嵌入式框架。此时,可把相对固定的信息直接存放在页面上,而变化频繁的内容则由视窗实现。在网页设计过程中,在网页中开辟的视窗占据网页中的一个区域。在此区域,可以呈现其他网页的内容 
实现方法:新建网页,并对网页进行布局;选择需要频繁更新数据的区域,在此区域中插入嵌入式框架。 
首先,切换到【代码】视图; 
其次,在代码状态下,在当前位置插入代码: 
应用嵌入式框架方法:在当前网页中,可对某些文字或图片建立超级链接,使这些超级链接的“Target=嵌入式框架名”。当访问者单击这些超级链接时,系统会自动地把这些链接对象显示在嵌入式框架内。 
4、 模板 
所谓模板,就是快速生成网页的模具。利用模板,可以快速地生成一批网页,这些网页都具有完全相同的结构,开发者可以根据需要对新网页的特定区域进行修改,从而高效率地设计一批内容不同、风格一致的页面 
使用模板的条件: 
网页由站点进行管理 
各网页具有相同的框架,仅有部分区域的内容不同 
模板技术:新建一个网页,对网页进行布局,可输入所有的固定内容 ;保存为模板文档【文件】→【另存为模板】,设置文件名后,执行【保存】操作,就会自动生成模板页文件。 模板页文件被存放在站点的Templates文件夹中,自动以dwt作为扩展名。插入可编辑区域光标放到经常需要改变内容的区域,然后执行命令【插入】→【模板】→【可编辑区域】。保存模板文档 
利用模板创建网页: 【文件】-【新建】-【模板中的页】;保存新网页;为新网页插入各种内容。

第六章 网页素材处理

1、 图像处理工具 
1)Photoshop:专业的图像处理软件,功能强大 
(2)Fireworks:专业的网页设计软件,与Dreamweaver、Flash并称网页三剑客 
(3) 动画制作工具:Flash——专业的动画制作软件,性能强劲 
ImageReady工具——现在其功能已经合并到Flash中 
选择专业化的Photoshop,因为Photoshop的应用更加普及,大家在学习Photoshop时并不局限于网页制作,而且可以利用Photoshop实现图像处理。Photoshop自带了部分动画功能,支持GIF小动画的处理。 
2、 Photoshop的图像处理 
认识Photoshop界面:工具箱、面板、工具栏、菜单、滤镜 
(1)调整图像: 
改变文件的格式:菜单【文件】-【存储为】,改变文件类型并重命名 
改变文件大小:【图像】-【图像大小】,重新输入宽高之值,注意以像素为单位。 
调整色彩和饱和度(图像—调整—色相和饱和度) 
调整亮度和对比度 
(2) 图像的修补: 
修补工具:剔除图像中的瑕疵(较大) 
仿制图章工具:覆盖图像中的小瑕疵 
(3)图像的复制与粘贴: 
使用选择工具、复制、粘贴 
对图层中图像的处理:自由变换工具、改变当前图层中图像的位置、图层样式实现特定的效果、为图层添加滤镜效果 
(4)文字图层:输入文字;调整文字大小、弯曲度、颜色;改变文字的笔画粗细 
3、Photoshop与网页的动态效果 
(1) Photoshop小动画应用 
制作淡入淡出效果:两个图层放置两幅不同的照片;首帧时前层不透明度100%,末帧时前层不透明度0%;补间;保存为GIF格式 
制作跑马灯效果:剔除小动画的背景;利用ImageReady打开GIF小动画;每帧成为一个图层;选择帧与对应的图层,用魔术橡皮擦擦除背景;“把优化效果另存为”gif图片 
制作长条的图形:首帧显示开头,末帧显示末尾;补间——保存为gif格式 
制作翻转图效果:制作颜色不同、图像相同的两个图层;制作切片;展开相关面板;设置切片的状态;为切片设置超级链接;保存为HTML文档。 
(2)在网页中使用翻转图:用DW把制作好的HTML文档打开,进行必要的编辑和设置。

第七章 基于PS的网页布局

1、PS布局的基本思想 
a) 主导思想:整体性、框架性的固定信息在PS中按照美工方式完成;文字信息,局部图像信息在DW中插入;以切片切割PS图像,保存为网页形式;利用DW处理PS生成的布局页面。 
b) PS布局主要流程 
以PS绘制页面 
利用PS的切片工具切割页面,切片是Photoshop制作网站主页的布局中用到的核心工具
把PS图像保存为“HTML和图像”形式 
利用DW处理PS生成的页面 
2、以PS布局网页 
a) 精心绘制页面 
获取素材;利用修补工具处理素材;利用选区、羽化等工具处理素材;利用自由变化工具处理素材;输入关键文字、菜单性文字 
b) 在PS下利用切片工具完成布局: 
选择切片工具:拖动鼠标、绘制用户切片;凡是需要在DW中修改之处,都制作为切片 
切片处理:纯色切片(以【切片工具】在切片上右单击,弹出【切片设置】对话框,选择【无图像】,并用吸管设置其背景色);图像切片(到DW中处理);制作翻转图 
c) 保存为层布局的Web页面 
选择【文件】-【保存为Web】格式,直接选择【存储】按钮,弹出【保存】对话框 
选择【保存类型】、HTML和图像 
保存位置:DW的站点文件夹 
利用【设置】-【其他】打开【输出设置】对话框,从中选择【切片】,【生成CSS】,然后【确定】 
最后,命名文件并选择【保存】后,即可制作出基于CSS+DIV的布局页面 
3、以DW处理PS的布局网页 
a) 处理表格布局的网页 
打开PS布局的Web页 
对纯色切片的处理:键入[Del]键删除占位图片 
对图像切片的处理:选择此图像所在的层对象(可借助设计区底部的标签),把图像文件名复制到【属性】面板的【背景图像】中;作为此层的背景图像;然后删除此占位图像 
b)处理层布局的网页 
打开PS布局的Web页 
对纯色切片的处理 
对图像切片的处理

第八章 网页特效设计

1、 网页中特效 
采取一定的技术手段,使网页中出现跑动的的小图片、滚动的文字,显示自动变化的日期、甚至禁止复制与保存等特殊效果。与上述特效有关的技术,称为网页特效技术 
网页特效技术: 
网页中的行为:行为总是与某一网页对象的特定事件相联系。针对某个对象的特定事件发生指定的动作 
时间轴动画:把时间作为网页运行的一个维度,基于时间维度设置网页中某一对象的状态,从而实现特定的效果 
嵌入JavaScript:直接嵌入JavaScript语句来实现网页特效 
2、 网页中的行为 
与行为相关的概念 
对象:Body   Button    Td    Img    Div    A 
事件:onLoad             onClick      onMouseOver    onMouseOut 
动作:打开新窗口;弹出警示框,信息框;特殊效果;显示文本;隐藏层;显示层 
主要工具——行为面板: 
添加行为的一般步骤:选择添加行为的对象;在【行为】面板中为对象添加行为;改变影响动作的事件 
3、 网页中的时间轴 
时间轴面板的用途:设定与时间有关的操作;例如:设置某一时间发生特定的动作;常常用于设置重复发生的事情;设置时间轴动画;在时间轴上添加行为 
网页上跑动的小动画效果 
基本思路:设置层,把小图片放到层对象中;让层对象沿着指定的路径跑动起来 

第九章 客户端的JavaScript 
1、 JavaScript语句 
a) 常规的语法 
变量可不定义而直接使用 
区分大小写字母,以;结束每个语句 
常见的控制结构:循环语句 
for(int i=0;i<结束值;i++) 循环语句; 
while(条件式){循环语句;} 
 分支语句 
if(条件式){ 
  满足条件的语句序列;} 
else {不满足条件的语句序列;} 
b) 应用最多的六个语句: 
alert(‘提示信息’);    ——用于警示 
confirm(‘疑问句’);  ——用于疑问 
window.open(‘网页信息’,‘参数’); ————打开新窗口,显示网页 
window.close()    ——当前关闭网页 
today=new Date(); ——获取当前日期 
document.write(‘’) ——在JavaScript中输出信息 
this——代表当前对象 
c) 示例 
获取当前日期的示例var today=new Date();   //利用document.write输出 
关于疑问情况的示例Onclick=“return confirm(‘确实想XXXX吗’);” 
关于关闭当前窗口的示例window.close(); 
关于警示窗口的示例alert(‘警示性信息’); 
2、 基于JavaScript语句的网页特效 
a) 自动弹出窗口 
onLoad=“window.open(URL,‘格式’);” 
onClick=“window.open(URL,‘格式’);” 
b) 翻动的图片 
多种不同的代码 
请参阅HTML课件中附带的各种特效、技巧 
c) 显示当前日期——较复杂,获取年月日和星期几,以中文方式输出 
d) 禁止复制oncopy="return false;" oncut="return false;" 
e) 禁止选择onselectstart="return false" 
f) 禁止右键oncontextmenu="window.event.returnValue=false" 
g) 禁止粘贴onpaste="return false" 
h) 禁止另存为 
i) 设置主页 
"this.style.behavior='url(#default#homepage)';this.setHomePage('http://www.123.456'); 
j) 添加到收藏夹 
window.external.addFavorite("http://202.112.94.39/mxl","马秀麟教学服务器"); 
k) 鼠标悬停时实现暂停运动的效果onMouseOver=this.stop();onMouseOut=this.star(); 
l) 在网页中制作菜单 
m) 为网页制作下拉式菜单 
制作水平菜单:水平制作若干个超级链接,链接地址为#,作为水平菜单项。 
制作下拉式菜单 
在水平菜单项下面对应位置插入层,并在各个层中插入超级链接项,作为下拉式菜单。 
设置水平菜单项:对水平菜单项,设置为onMouseOver显示特定层, onMouseOut隐藏特定层 
设置下拉菜单项:对于存储下拉菜单的层,设置为为onMouseOver显示自身, onMouseOut隐藏自身 
注意:下拉式菜单层应该在顶部适当设置Padding,并与水平菜单项适当重叠 
本方法仅仅适应于绝对位置布局方式 
n) 为网页制作垂直折叠式菜单 

3、 基于JavaScript的客户端验证 
客户端输入数据合法性验证方法:定义一个数据校验的函数;在表单执行Submit时调用检验函数 
4、 实现技术 
直接利用DW制作合法性验证 
缺陷:提示信息不够理想 
方法: 
选中表单,然后在行为面板中添加行为【检查表单】 
逐个表单域进行设置即可; 
直接编码: 
制作表单,牢记表单中各个表单域的命名; 
为表单的onsubmit添加一个return check()的检测函数 
用JavaScript定义检测函数check(),并负责进行数据检查

第十章 动态网页设计技术简介 
1、 动态网页设计技术简介 
1)ASP.NET的运行基础 
.NET Framework 
.NET Framework是一套微软公司提供的应用程序开发框架 
ASP.NET应用程序被编译成依托.NET Framework运行的伪码 
.NET Framework的组件:公共语言运行库(Common Language Runtime,简称为CLR,也称为公共语言运行时);.NET Framework的类库。 
.NET Framework的工作特点:提供一个公共语言运行库;程序被编译成基于运行库的伪码(伪机器码);伪码程序比源码有更高的运行效率;伪码程序已经解决了语法错误问题;基于.NET Framework的程序已经广泛应用 
2)ASP.NET的版本 
.NET Framework 1.1,Visual Studio 2003,是ASP.NET普及的开始,提供基于.NET模式的数据库访问技术,数据库的访问基于Connection和Command对象 
3) ASP.NET的语言 
编程语言:Visual Basic .NET;Visual C++ .NET;Visual C# .NET 
ASP.NET编程特点:基于同一CLR;其类库、对象名、方法名都完全相同;不同的语言仅有语法上的差异;运行方式无差别;良好的提示 
4) VS2008设计初步 
具体方法:新建项目;创建Web窗体;新增“标准”控件;设置标准控件的名字;为按钮的Click事件编码

第11章 C#语法结构 
1、C#语法结构 
1)ASP.NET设计初步 
各类文件:ASPX文档——界面文档(XHTML标记) 
ASPX.CS文档——代码隐藏页文档(C#代码) 
CSS样式文件 
ASPX文件:设计视图;把“控件”从工具箱拖到窗体中,成为一个对象 
源视图:可以观察ASPX的源文件;每个ASPX对象以作为标记 
ASPX.CS文件:是ASPX的隐藏代码代码页文件 
基本结构:本质上是一个Class定义;Page_Load方法(函数)用于书写该页面调入时需自动执行的语句 
2)C#语言基础 
C#的语句规范 
C#程序的层次结构:类——class;方法——即函数,对应于某个控件的某一操作;语句块(语句) 
C#的语句规范:C#的语句区分大小写字母;每个语句必须以分号“;”结束;一行中允许输入多个语句;C#的一条语句可以是一个运算式,也可以是一个输入、输出语句,甚至是一个复合型语句;C#的复合型语句用{}括起来; 
3) C#的输入、输出语句 
C#的输出语句:C#常常借用文本框、标签来输出数据 
文本框名称.Text=字符串型内容 
标签名称.Text=字符串型内容 
注意:如果要输出的内容不是字符串型,需要利用ToString()命令转化为字符串型; 
C#使用Response.Write(字符串型内容)输出结果 
C#的输入语句:C#通常借用文本框、组合框、单选框等标准控件获取数据。String xx=txt.Text; 
String my=ddl.SelectedValue;使用Request.QueryString[“参数名”]获取参数的;String xx= Request.QueryString[“id”];需要主程序使用”程序名.aspx?id=数据“提供参数;使用Request.ServerVariables[“系统量”]获取系统信息 
4)C#的变量使用规范 
任何变量都必须事先定义才能使用 
基本格式:类型名 变量名;可以把变量定义与变量赋值放在同一语句中;类型名 变量名=变量的值;int xyz=128; 
变量名称规范:必须以字母或_开头;中间可以有数字、但不可以使用空格和标点符号;最好不要使用汉字;不要使用系统的保留字:class, public, int, float, string, if, else, while, for,switch等;推荐使用不规范的英文及其缩写。 
5)C#的数据类型 
数值型数据 
整型数据int x=125, y=8;注意:整型量进行算术运算的结果为整型; 
浮点型数据float(单精度型)    double(双精度型) float xx=128.4f; double yy=127.1; 
必要时,整型可自动化为浮点型,反之则不可。 
小数默认为double型,对float型加f作为标记。 
布尔型数据:布尔型数据也称为逻辑性数据,其值只有两个状态:true和false(即“真”和“假”)。布尔型数据用bool定义,主要用于各种逻辑运算。 
字符串型数据:字符串型数据,即由一串字符构成的数据,有时也简称为字符型数据。字符串型数据用String定义,主要用于表达人名、语句、地名等等各种字符串型信息。例如:String xm="张三"; 表示定义了一个字符串数据xm,而且其初始值为"张三"。 
日期时间型数据:日期时间型数据,即由一串具备日期格式的字符构成,能够参与一般的加减运算。日期时间型数据用DataTime定义,主要用于表达具体的日期或时间;例如:DateTime dt = DateTime.Now;表示定义了一个日期时间型数据dt,而且其初始值为当前日期。 
数据类型转换:字符串型转化为其他类型;利用Convert.ToXXXXXX把字符串型数据转化为其他类型。 
6)C#的运算符 
算术运算符 +  -  *  / %(求余数) 
逻辑运算符 
比较运算符 
逻辑运算符 
7) C#的基本语句 
赋值语句:把一个数据赋予某个变量,或同时赋予多个变量 
分支语句 
if (条件式) {满足条件时执行的语句体;} 
else {不满足条件时执行的语句体;} 
循环语句: 
for(变量=初值;变量的条件式;变量递增或递减){循环体;} 
严禁死循环 
while(条件式){循环体} 
通常在使用while条件式以前,需要先初始化某个变量,并且在循环体中要改变此变量的值。从而在变量不满足条件式可以退出循环。 
先判断,再执行。循环体有可能执行0次。 
严禁死循环 
do {循环体} while(条件式) 
通常在使用while条件式以前,需要先初始化某个变量,并且在循环体中要改变此变量的值。从而在变量不满足条件式可以退出循环。 
先执行语句,再判定条件,循环体至少执行一次。 
foreach(var 变量 in 集合变量){循环体} 
对集合中的每个变量都执行循环体所包含的操作。

第12章 面向对象程序与控件 
1、 面向对象的程序设计 
①基本概念: 
程序由对象构成; 
对象作为一个整体存在,包括(状态和方法) 
状态——静态属性 
方法——面向事件的方法 
面向对象程序设计的三个要素:对象、事件、消息 
②程序设计的关注点: 
类的概念(Class)——同种对象的描述——对象的模板 
类是对同一种对象的属性的描述,对象是类的具体实例 
面向对象程序设计的过程实质上是定义class并描述对象的过程 
注意:对象名称的名称由开发者任意定义;对象的方法名、属性名由class决定;对对象的描述;为对象赋予状态值;对对象上的某一事件给予应对方法。 
③VS2008中控件的概念 
控件位于VS2008的工具箱中——类的概念 
控件的实例化:把控件从工具箱拖动到窗体中,就会创建一个该类型的对象,这就是控件的实例化。 
控件被实例化后,常见的操作为:可以针对控件对象修改其常用属性;针对控件对象的某个事件撰写方法程序;启动对象的各方法程序的方法:直接双击/利用【属性】面板中的“方法”选项卡。

2、 VS2008的标准控件 
①标准控件的公共属性 
a) ID属性——对象的唯一标志 
b) Text属性——显示信息 
c) Width属性 
d) Height属性 
e) Backcolor属性 
f) Click事件:对应的方法(对象名_Click) 
②最基本的3个控件 
(1)Label控件 
标签控件,主要用于在窗体中显示文本信息。 
常见格式:对象名.Text=字符串型量 
(2)TextBox控件:文本框控件,主要用于接收用户的输入信息,也可用于显示信息 
三种状态:SingleLine ;MultiLine ;Password(用于输入密码) 
获取输入内容的语句:String xx=对象名.Text; 
(3)Button控件:按钮控件,主要用于“提交”数据,启动某个处理操作 
关键属性:ID、 Text 
核心的事件:Click 
常见格式:对象名_Click    ——对应一个方法 
③单选型控件 
(1)DropDownList控件:下拉式列表框控件——用于下拉式选项,允许终端用户从多个选项中选出一项 
添加选项的方法:利用智能菜单添加选项——示例 
利用命令添加选项——示例 
对象名.AddItem(new ListItem(字符串变量)); 
对象名.Items.Add(字符串变量); 
可尝试把数组的所有信息添加到选项中 

获取选择结果:对象名.SelectedValue.ToString();
(2)RadioButtonList控件 
单选框组控件,用于表示一组互斥的选项(如性别),整个选项组作为一个对象;智能按钮添加选项,自动互斥。 
获取选择结果:对象名.SelectedValue.ToString(); 
使选项水平摆放:RepeatDirection属性设置为“Horizontal”;默认为垂直 
(3)RadioButton控件 
单选框控件,常常用于表示一组互斥的选项,每个选项是一个对象 
关键属性:Text:显示选项的文字信息 
Groupname:用于标记组名,同组的选项互斥 
Checked为true表示被选中 
获取选项的语句:逐项判定是否选中;具体方法bool aa=对象名.Checked;if(对象名.Checked) str=“XXXXX”; 
④多选型控件 
(1)CheckBox控件 
复选框控件,常常用于表示一组可同时选中的选项 
关键属性: 
Text:显示选项的文字信息 
(2)CheckBoxList控件 
复选框组控件,用于表示一组可同时选中的选项 
可使用智能按钮添加选项,也可使用语句添加选项 
获取选择结果:逐项判定是否选中——与ListBox的多选情况相同 ;建议使用for循环 
String str = ""; 
for(int i = 0; i      if(cbl.Items[i].Selected) 
      str = str + cbl.Items[i].Value.ToString(); 
(3)ListBox控件 
列表框控件,在一个矩形区域中列出多个选项。 
关键属性:SelectionMode为Multiple——允许多选 
添加选项方法:与DropDownList相同 
获取结果的方法 
对象名.SelectedValue 
注意: 
在允许选中多项时,其SelectedValue值只能输出第一个选项的值; 
要想输出全部选项,可以使用:对象名.Items[选项序号].Selected属性逐项进行判定。 
 for(int i=0;i   if(lb.Items[i].Selected) Response.Write(lb.Items[i].Value.ToString());

第13章 验证控件的技术 
1、 验证控件的技术 
①表单验证的意义:在交互式网站开发中,需要通过表单获取用户输入的信息。需要规范用户的数据输入。 
②表单验证的方法 

对于用户输入的数据,有两种验证方式。其一是客户端验证,其二是服务器端验证。对比上述两种验证方式,客户端验证具有本地验证、不浪费网络资源、减轻服务器负担的优势,但其验证代码暴露在客户端,可被任何用户阅读,安全性不强。服务器端验证则相反。
(1)客户端验证 
基本思路:在网页中设计一段JavaScript代码,在用户输入数据后,这段代码由用户的浏览器执行,进而实施数据验证,只有通过验证的数据才会被传送到服务器上。 
特点:本地验证、不浪费网络资源、减轻服务器负担;验证代码暴露在客户端,可被任何用户阅读,安全性不强 。 
(2)服务器端验证 
基本概念:系统把用户通过表单输入的数据回传到服务器上,由服务器上的程序进行数据的合法性验证。 
特点:服务器验证、浪费网络流量、服务器负担重;代码在服务器端,用户无法浏览,更安全 


③VS2008的验证方法 
基本思想:智能决定验证者——客户端与服务端;提供专门验证控件;验证控件必须绑定到具体的对象上。 
注意事项:默认为所有PostBack激发验证行为;必要时设置某些按钮的Click事件(局部交互)不激发验证 
④VS2008的验证控件类别 
验证控件(5个):禁止空白;要求二者相同;限定范围;符合某种格式;用户定义验证;输出验证结论控件(1个);集中输出详细的验证结论。 
基本方法:在被验证者后面放置一个实施验证的控件;设置验证控件的属性;以验证控件的ControlToValidate 属性绑定被验证者;

以验证控件的Text 属性输出简要警示信息——常常使用一个*号或#号——显示在放置验证控件的地方;

以验证控件的ErrorMessage属性输出详细的警示信息——该信息被ValidationSummary控件集中输出;在窗体底部放置一个ValidationSummary控件,集中输出验证错误信息(ErrorMessage) 
⑤验证控件简介 
(1) RequiredFieldValidator ——不可空白 
关键属性:ControlToValidate ——说明被验证者 
Text——简要警示信息 
ErrorMeaage——详细警示信息 
(2) RangeValidator ——限定范围控件,如确保用户输入的数据在20-100之间
关键属性:ControlToValidate ——说明被验证者 
Type——被验证者的类型 
MinimunValue~ MaximumValue (取值范围) 
Text——简要警示信息 
ErrorMeaage——详细警示信息 
(3) CompareValidator ——二者须相同控件 
关键属性:ControlToValidate ——绑定被验证者 
ControlToCompare ——第二个被验证者 
Text——简要警示信息 
ErrorMeaage——详细警示信息 
(4) RegularExpressionValidator ——正则表达式控件 
关键属性:ControlToValidate ——说明被验证者 
ValidationExpression——输入一个正则表达式 
Text——简要警示信息 
ErrorMeaage——详细警示信息 
正则表达式 
含义;用一串特定符号表示字符串应该满足的格式。 
书写规范:\d, 等价于[0-9],代表任意数码;[a-z],代表任意小写字母 ;[^a-z], 任意非a-z的字母;{数字}, 代表重复次数 
(5) ValidationSummary 控件 
其作用是综合输出一个窗体中的全部ErrorMessage信息。本控件不需要特定的设置,把此控件拖动到窗体的适当位置即可。

第14章 网页布局与网页切换 
1、 动态网页布局与局部刷新 
①网页布局的实施 
a. 基于表格的简单布局 
从工具箱的“HTML”中把表格添加进来,基于表格进行设置 
b. 基于层的简单布局 
c. 把传统的网页布局纳入到VS2008动态网页 
把静态网站的Image文件夹和CSS文件等复制到VS2008的项目文件夹;新建一个动态网页文档ASPX;把已经布局好的网页代码复制到动态网页文档的相应区域;样式代码可复制到Head区,或者使用附加CSS文档;布局代码复制到空ASPX文档的DIV区域中;不要破坏ASPX文档原有的框架结构。可把CSS样式文件直接拖动到Web窗体上,利用工具栏直接使用样式 
运行动态网页页面,检查效果; 
在新布局的动态页面区插入控件,编写交互程序。 
②局部刷新技术的起源与意义 
a. 必要性 
如果窗体中每个控件对数据的提交都要引起整个页面的刷新,必然导致服务器的负担过重,系统响应时间太长(局部PostBack行为)。 
因此,在Web应用程序开发中,提出了局部刷新技术。即在Web应用程序中,仅对需要提交数据或者数据发生变化的局部页面实行刷新。 
AJAX (Asynchronous JavaScript and XML)是一种解决Web交互问题的技术。 
b. AJAX技术 
AJAX技术的应用,相当于在客户机的浏览器和服务器的Web程序之间增加了一个引擎(代理)。 
c. 关键技术 
ASP.NET提供了大量的AJAX控件,但工具箱中默认AJAX控件共有5个,其中ScriptManager与ScriptManagerProxy是一组,用于声明本页面支持AJAX技术;UpdatePanel是更新面板,用于组织一个可独立刷新的局部区域。 

2、 动态网页切换与参数传递 
主流的网页切换方法 
①利用HTML文档的超级链接实现切换 
提示性文字 
②利用Web窗体控件HyperLink控件创建超级链接 
NavigateUrl="http://www.bnu.edu.cn">北京师范大学 
③利用客户端脚本实现页面切换 
onclientclick="window.open('http://www.bnu.edu.cn','')" Text="北京师范大学" 
④利用Response.Redirect(Url)实现页面切换 
⑤使用Server.Transfer(Url)方法切换到新网页 
⑥使用Server.Execute(Url)方法切换到新网页 

3、 网页间的参数传递 
(1)在Url中利用“?”内嵌参数 
主要格式:<文件全称>?<参数名>=<参数值> 
示例:Response.Redirect("lookfor.aspx?xb=女&age=20”) 
相互控制: 
调用者——提供参数Response.Redirect(“showData.aspx?id=5”); 
被调用者——接受参数String id=Request.QueryString[“id”]; 
(2)利用Session传递参数 
定义Session量:Session量在用户会话期间一直有效,Session量隶属于用户,在用户在线期间一直有效,可跨页面存在。 
示例:Session[“变量名”]=<参数值> 
(3)对网页参数进行编码处理 
主要格式:<文件全称>?<参数名>=Server.UrlEncode (<参数值>) 
示例:Response.Redirect(“lookfor.aspx?xb=“+Server.UrlEncode(“女”)) 
相互控制:调用者——提供参数 
Response.Redirect(“showData.aspx?id=”+Server.UrlEncode(xx)); 
被调用者——接受参数 
String id=Server.UrlDecode (Request.QueryString[“id”]);

第15章 VS2008数据库技术 
1、 数据库的基本概念 
(1) 什么是数据库? 
所谓数据库,是大量数据的集合,指采用标准化的结构,按照一定的规范对数据进行组织与管理而形成的大规模数据的集合。 
(2) 关系数据库的概念 
关系模型的定义: 
关系模型以规范的二维表组织数据,不允许表中套表;关系模型规定表中的一行是一条记录,用于描述一个实体的各个属性的取值,也称为一个元组;表中一列为一个字段,用于描述实体集的一个属性及其取值,也称为一个数据项; 
关系模型的主键: 
在关系模型中,不允许两行完全相同,即行不准重复。在一个关系表中必然存在一个字段或一个字段组合能够唯一地确定一条记录,这个标记被称为主键(Primary Key),简称为键(Key); 
关系数据库的外键: 
为了完整地描述一个管理事务,通常需要多表协同。协同的多表之间通过一定的语义关系实现约束。在关系数据库中,如果表S的属性F的取值参照其他表R的主键K,则称F为外键。关系数据库利用外键描述表间的约束关系 
(3)关系数据库的设计 
设计关系数据库: 
分析数据的逻辑关系 
设计数据表的结构:确定每张数据表的结构(列名,类型);确定数据表的主键(对于复杂数据表,可附加ID字段作为主键);确定数据表的表间关系——确定外键 
开发关系数据库:启动数据库管理系统 
创建数据库 
创建数据表:新建数据表结构;输入记录;设置数据表的主键;设置表间关系(设置外键约束) 
2、利用VS2008管理数据库 
 (1)新建数据库 
右单击”数据连接“, 
选择”创建SQL Server数据库“, 
指定位置:” .\SqlExpress“,(表示本地的VS2008自带的简化版SQL Server 2005服务器) 

并给予数据库名称。 
最后【确定】 
(2)新建数据表 
创建新表的结构: 
展开此连接树状结构图,右单击【表】,从其快捷菜单中选择【添加新表】,打开创建新表的表结构的界面。 
输入数据表的每个字段的信息 
设置主键 
保存 
为数据表输入数据: 
右单击表名称——在“数据连接”内 
选择”显示表数据“ 
输入记录 
(3)管理数据表的结构: 
进入表结构定义模式(右单击”表名称“,选择”打开表定义。) 
设置自增型字段:数据类型为“int”,底部的“列属性”面板中的“标识规范”属性修改为“是”,“标识增量”值修正为1,“标识种子”的起始值设为1。 
设置字段的值约束:右单击字段,在弹出菜单中选择“Check”约束,从左侧单击“添加”, 加入约束条件式; 
设置表间关系:在”表定义“状态下,右单击某字段名,选择”关系“,启动创建”外键关系“的对话框 
3、VS2008的数据管理 
(1)查询的概念 
查询是数据库操作的核心。 
借助高级语言调用“查询语句”实现对数据库的远程操作。 
(2) 查询设计器 
进入查询设计器:右单击“表”,从其快捷菜单中选择“新建查询”,则进入新建查询(查询设计器)的状态 
单表查询:列名、筛选器。 
多表连接查询 
分组查询:菜单【查询设计器】-【添加分组依据】,使查询设计器的界面中包括“分组依据”栏目。 分组依据栏目中选择”分组字段“、”计算类型” 
(3) 拷贝与附加数据库 
1) 拷贝新建的数据库: 
退出VS2008系统; 
找到数据库文件,默认位置:系统盘的Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data 
也可以利用:“搜索(包含“系统文件夹”)”功能找到数据库文件 
2) 拷贝数据库文件 
注意:有两个文件:mdf和ldf文件,切勿遗失 
3) 附加数据库文件:在“服务器资源管理器”下,选择添加“连接”,附加数据库文件 
4、SQL语句的一般格式 
1)SQL语言的含义 
SQL,英文全称为Structured Query Language,其含义是结构化查询语言。 
数据库管理的通用语言 
2)查询语句 
(1)一般格式 
Select <列名>,... From <表名> 
 [Where <条件式>] 
 [Group By <分组列> [Having <分组条件>]] [Order By <排序列> ASC/DESC] 
(2)示例 
Select * from 学籍表 where 系别=‘教育学院’ 
Select 系别,sum(奖金) as 总金额 from 学籍表 
group by 系别 
(3)更新语句 
Update 表名 set 列名=值 where 条件式 
Update 学籍表 set 补贴=补贴+300 where 性别=‘女’ 
(4)插入语句 
Insert into 表名(列名,..) Values(值,..) 
Insert into 学籍表(学号,姓名) Values(‘S001’,’章平’) 
(5)删除语句 
Delete from 表名 where 条件式 
Delete from 学籍表 where 姓名=‘李四’

第16章 SqlDataSource技术 
1、 ASP.NET访问数据库技术 
1) ASP.NET访问数据库的三层结构 
数据存储层——数据库管理系统负责数据存储工作 
业务逻辑层——业务活动、处理 
表示层——数据显示;GridView、FormView等控件;普通的Web控件 

ASP.NET内置的成员资格管理体系中,其使用的默认数据库为ASPNETDB
2) VS2008的Web窗体访问数据库入门 
把数据表拖动到窗体中 
自动产生两个对象: 
SqlDataSource对象:负责数据库连接、数据库的查询与更新命令;关联的数据表——最好已经设置主键 
GridView对象:负责以表格方式显示数据表的内容;自动建立两个对象之间的联系 
2、 ASP.NET的DataSource技术 
1) 创建SqlDataSource对象 
利用数据表创建SqlDataSource对象: 
从【服务器资源管理器】的”数据连接“下把某个数据表拖动到窗体中; 
系统自动创建SqlDataSource对象和GridView对象; 
特点:自动配置SqlDataSource对象的连接字符串;自动配置SelectQuery查询语句; 
如果该表已经有主键,会自动创建基于主键的更新、删除和插入语句(SQL) 
2)利用工具箱创建SqlDataSource对象 
从【工具箱】的“数据”中把SqlDataSource控件拖动到窗体中; 
智能菜单中选择“配置数据源”,则立即打开【新建连接】的对话框,设置其数据连接; 
配置Select语句——“Where子句”按钮:字段表;Where子句;绑定参数源 
配置更新语句——“高级”按钮;要求原数据表带有主键;直接设置 
配置SqlDataSource的参数: 
启动SqlDataSource的参数配置界面:选中SqlDataSource对象;在其SelectQuery的属性中单击小按钮,启动配置界面【命令和参数编辑器】。 
为SqlDataSource对象绑定参数 
添加参数; 
为参数绑定数据源; 
在SQL语句中设置带有参数的命令——@参数名 
2) 基于普通控件的记录插入 
(1) 创建输入界面 
新建窗体 
加入普通“标准”控件 
(2)建立SqlDataSource对象 
让SqlDataSource对象绑定普通控件 
SqlDataSource对象.Insert() 
3、 GridView的简单设置 
GridView控件 
(1)GridView控件的作用 
GridView是一个以二维表格方式输出数据的控件,位于【工具箱】的数据栏目下。 
(2)创建GridView 
利用数据表直接创建GridView对象——拖动数据表到窗体中 
从【工具箱】中创建GridView ——拖动工具箱中的”GridView“控件到窗体中;为GridView控件设置DataSource属性 
配置GridView控件 
(1)GridView的智能按钮 
设置”数据源“ 
自动套用格式 
(2)设置自动分页 
设置PageSize——控制每页的记录个数 

如果需要获得GridView的当前页的页号,使用的技术是e.PageIndex
(3)设置GridView的主键—— DataKeyNames 
(4)编辑列:设置“GridView”中的列(顺序、标题) 
(5)设置“选择”列:选择特定记录,以“对象名.SelectedValue”返回选中记录的主键 
(6)设置 “编辑”列:启动“编辑”功能;对“主键”以外的字段进行编辑——格式不理想 
(7) 设置 “删除”列:启动“删除”功能;删除选定记录 
刷新GridView的显示内容:在C#代码状态,对象名.DataBind(); 
4、 FormView技术 
(1)FormView控件的特点 
FormView控件是在一页中仅显示一条记录、可通过翻页显示其他记录的控件。 
除了具有显示记录的功能外,还能编辑、删除和新建记录,而且可以通过模板重新排列各字段在页面中的布局。 
(2)FormView的外观 
无数据源 
有数据源 
(3)FormView的关键属性 
DataSource——明确本FormView的数据源 
DefaultMode 
FormViewMode.ReadOnly——仅用于查询 
FormViewMode.Insert——插入模式 
FormViewMode.Edit——编辑模式 
FormView对象的模板 
启动编辑模板:单击FormView的智能按钮,打开其智能菜单,从中选择“编辑模板”; 
编辑InsertItemTemplate模板 
选择InsertItemTemplate,进入Insert模板编辑状态 
拖动各种控件,调整其位置 
可以插入Table,协助布局各种控件 
同理,设置EditItemTemplate。

第17章 数据库访问的高级应用 
1、 利用SQL语句进行数据处理 
SQL语句的基本类型 
查询语句:SELECT语句 
更新语句:Update语句 
插入语句:Insert语句 
删除语句:Delete语句 
利用SqlDataSource对象执行SQL语句 
SqlDataSource对象的四个重要属性:SelectCommand ;UpdateCommand ;InsertCommand ;DeleteCommand 
如何利用SqlDataSource对象执行SQL语句 
查询语句:对象名.SelectCommand=Sql查询语句字符串; 
直接利用GridView1.DataBind();——刷新 ;把查询结果存放在DataView中 
DataView dv=(DataView)SqlDataSource1.Select (DataSourceSelectArguments.Empty); 
更新语句:对象名.UpdateCommand=Sql更新语句字符串;对象名.Update(); 
删除语句:对象名.DeleteCommand=Sql删除语句字符串;对象名.Delete(); 
插入语句:对象名.InsertCommand=Sql插入语句字符串;对象名.Insert(); 
带有参数的SQL语句的撰写: 
借助字符串参数的技术 
参数:String sqls=String.Format(“SQL语句的字符串,带有以{}为标记的参数”,对应的参数变量) 
示例:String ssql=String.Format(“Select * from 学生表 where 姓名=‘{0}’”,T1.Text.Trim()); 
2、 获取GridView中的数据 
(1)获取GridView的特定数据 
① 获取GridView中的指定行: GridViewRow gvr=gvXsb.Rows[行号]; 
②获取GridView指定行列的数据 
String xx=gvr.Cells[列号].Text; //从已经得到的GridView行gvr中获取 
String xx=gvXsb.Rows[行号].Cells[列号].Text; //直接从GridView中获取; 
获取选定行的数据 
③ 获取当前选定行的序号:int gvno=gvXsb.SelectedIndex; 
④获取选中行的主键之值,本命令仅作用于与“选择”相关的事件中。 
id=gvXsb.SelectedValue;     
或者  
id=gvXsb.DataKeys[gvXsb.SelectedIndex].Value.ToString(); 
对应方法的参数e作为基准,利用e.RowIndex作为当前行的序号。 
xx=gvXsb.Rows[e.RowIndex].Cells[列号].Text;//获取当前行、指定列的数据; 
或者:GridViewRow gvr=gvXsb.Rows[e.RowIndex]; //获取当前行的信息。 
(2)GridView的模板列 
使用模板列的方法 
新增模板列:现有列转化为模板列;添加模板列 
在GridView的【编辑列】对话框中,从左上角的“可用字段”区域中选择TemplatedField,添加一个模板列。 
选中新添加的模板列,在【属性】区域中为HeaderText属性设置值,说明模板列的含义。最后,返回到GridView的智能菜单。 
单击【编辑模板】,进入编辑模板状态。选择模板【ItemTemplate】; 
把普通控件添加到”编辑模板“中。 
绑定数据表的字段【编辑DataBinding】,可为模板列绑定字段 
获得模板列的输入数据 
3、 SqlDataSource访问数据库技术小结 
1) 基于GridView实现数据查询 
基本思路:GridView基于SqlDataSource对象 
修正SqlDataSource对象的SelectQuery属性 
把查询语句的查询条件与参数联系在一起 
把参数绑定到普通控件上 
2) 基于GridView技术的记录删除 
对于GridView添加删除列; 
在“编辑列”状态下,选择“删除列”,使之成为模板列; 
选择“编辑模板列”,为按钮“删除”的onclientClick添加代码: 
return confirm(‘一旦删除,不可回复,确实要删除吗?’); 
3) 利用FormView的实现记录插入 
新增FormView对象 
设置DefaultMode为Insert 
“编辑模板”:选择“InsertItemTemplate”,进入Insert模板编辑状态 
拖动各种控件,调整其位置 
调整时,插入Table,协助布局各种控件 
及时反馈对相关控件的影响,如果希望在添加完毕,相关的GridView能够及时地反馈添加效果,则可在这个FormView的ItemInserted事件的代码中添加:GridView对象名.DataBind(); 
4) GridView +FormView的记录编辑 
创建GridView和FormView控件 
创建GridView及其SqlDataSource对象; 
创建FormView及其SqlDataSource对象; 
配置GidView对象 
设置GridView的“自动套用格式” 
设置GridView“启动分页”和“启用选定内容” 
配置FormView 
选择其属性DefaultMode的模式为Edit,DefaultMode=FormViewMode.Edit 
选择其属性Visible=false 
启动其“编辑模板”功能 
调整各控件的位置(可借用表格适当布局) 
调整其数据源。使FormView的参数源绑定GridView 
编写相关代码: 
针对GridView的SeletedIndexChanged事件,添加代码:FormView对象名.Visible=true; 
针对FormView的ItemUpdated事件,添加代码:GridView对象名.DataBind();FormView对象名.Visible=false;

第18章 身份认证管理技术 
1、VS2008变量作用域与两类特殊变量 
1.1 VS2008中内存变量的类别 
成员变量:位于Class中,但不属于任何一个方法体 
作用范围:当前Class内部,可被任意方法共享 
函数内部的局部变量:通常位于方法(函数)内部,在起始部分。 
作用范围:整个函数体 
块变量:位于块内,作用域为块。 
注意:这三类变量都不能跨动态页面存在 
1.2跨页面存在的两类变量 
(1)Application变量 
基本思路:隶属于整个应用系统(应用程序), 
跨页面存在 
一旦定义,被所有用户共享 
生存期:应用系统开始运行~应用程序停止运行 
基本方法:Application[“变量名”]=值 
常见的用途:网站的计数器,整个网站的在线人数 
(2)Session变量 
基本思路:隶属于每一个用户 
跨页面存在 
在用户访问时自动创建一个该用户独占的实例(每个Session变量可能同时有很多个实例) 
Session实例的生存期:该用户在线期间 
常见的方法:Session[“变量名”]=值 
Session.Timeout=分钟——设置Session实例的生存期 
Session.Abandon——执行此命令的用户的所有Session实例全部失效 
常见用途:存储与用户密切相关的信息,通常用于存储用户的登录信息 
2、ASP.NET的登录模块体系 
2.1 实施登陆模块的基本思路 
(1)登陆体系的基本概念 
所谓成员,就是Web应用系统中的用户,而角色就是Web应用系统中成员的类别。 
成员(Users)与角色(Roles)的概念是无法回避的知识。 
访问控制权限是赋予角色的,而不是赋予成员的。 
(2)实施思路 
系统的登录与权限体系必须解决两个问题 
系统中包括哪些用户,如何管理——后台数据库 
如何判定合法用户——用户登录界面与身份验证 
如何标记已登录用户——Session变量(账号,权限) 
如何避免未验证用户直接访问程序 
在Page_Load模块中进行检查,未登录用户将自动跳转到登录界面 
(3)技术方案 
后台数据库:用户表、角色表 
用户隶属于某一角色 
针对角色设置对各个程序模块的访问权限 
功能模块: 
登陆模块:登陆界面、到后台数据库验证、获取角色信息 
依据角色确立个性化菜单:根据角色定位到不同的动态网页;在动态页的Page_Load验证用户的操作权利 
用户管理模块——管理员负责:用户注册、修改个人信息、修改个人密码 
管理员对所有用户的冻结、审核与更改权限 
3、基于内置成员资格体系的登录模块 
3.1 启动内置成员资格体系 
核心流程:新建登陆窗体,并命名为Login.aspx;从工具箱中把Login控件拖动到登陆窗体中;单击Login控件右上角的智能按钮,启动智能菜单。在智能菜单下选择“管理网站”; 
在“管理网站”界面的“安全性”选项卡下,选择“选择身份验证类型”,并设置为“通过Internet”。 
启动内置成员资格体系的实际作用:VS2008自动在当前项目的App_Data文件下创建ASPNETDB数据库;VS2008还会修改Web.config文件中的相关项,使之符合Forms验证的要求。 
3.2 添加用户、角色 
添加角色:进入“管理网站”界面的“安全性”选项卡;首先选择“启用角色”,启用系统的角色功能;选择“创建与添加角色”,进入角色设置界面,逐个设置用户角色。 
添加用户:进入“管理网站”界面的“安全性”选项卡;选择“创建用户”,启动注册新用户界面,可以创建新用户,并可同时设置新用户所属的角色。 
3.3 配置个性化菜单 
(1)基本思路 
利用LoginView控件配置个性化菜单 
(2)具体做法 
在Web窗体中添加LoginView控件 
以智能菜单为LoginView控件添加各类预设的角色 
选择其智能菜单中的“编辑RoleGroups”选项,则打开一个“RoleGroups集合编辑器”; 
把各类角色添加到其中; 
在LoginView右上角的智能菜单中,从中选择一种模板,设置其个性化菜单。 
各种角色模板、登录用户但无角色模板、匿名用户模板 
3.4 配置修改密码的功能 
(1)基本思路 
利用内置控件ChangePassword实现修改密码功能 
(2)具体做法 
新建修改密码的窗体 
在其中添加ChangePassword对象 
主要的属性:DisplayUserName——是否显示用户名 
SuccessPageUrl ——修改密码成功后跳转到的页面 
3.5 注册模块的应用 
(1)基本思路 
利用CreateUserWizard控件完成注册新用户的工作 
(2)具体做法 
新建注册用户的窗体; 
在其中添加CreateUserWizard对象。 
主要的属性: 
ContinueDestinationPageUrl ——注册成功后跳转到的页面,通常为Login.aspx

第19章 服务器配置技术 
1、ASP.NET应用系统的体系结构 
(1)Windows服务器: 
Windows XP服务器的局限性;仅支持10个用户,并发能力差 
(2)Windows Server 2003/Windows Server 2008: 
可动态使用大容量内存;并发能力强;需高度注意其安全性 
(3)数据库管理系统: 
SQL Server 2005;使用并发能力强的版本,不要使用开发版;支持两种验证方式(Windows验证和SQL 验证) 
(4)服务器上的ASP.NET应用系统: 
基本要求:不必包含源代码(只需ASPX文档和生成的dll库);系统应高效运行;需要相应版本的.NET Framework框架的支持 
注意事项:如果应用系统包含数据库,则需要把数据库附加到SQL Server 2005系统中 
2、IIS服务器配置 
(1)IIS服务器中的相关概念 
虚拟目录: 
虚拟目录的概念:针对远程用户,不开放服务器的实际文件夹,而是在Web服务器下做一个面向实际文件夹的别名,仅向远程用户开放此别名。这个别名就是虚拟目录。 
例如:本地D盘上的文件夹mxl,可以设置为虚拟目录tsgl,远程用户在IE中就要使用tsgl来访问此文件夹中的文档。 
虚拟目录的优势:对远程访问者屏蔽真正的文件夹,使远程用户只能通过虚拟目录访问网页,提高了安全性,简化了操作;设置远程用户对虚拟目录的访问权限;限制能够访问此虚拟目录的客户机,把使用某些IP地址的客户机拦截在系统之外,杜绝一些非法访问;可以设置虚拟目录的默认文档,把远程用户对虚拟目录的访问转变成对虚拟目录下特定文件的访问;重新组织Web服务器上的文件夹体系。 
文件映射: 
IIS服务器对存储在虚拟目录下的文档提供两种方式的服务:其一,直接把文件内容发送到访问者的浏览器中。例如各种静态网页和文件下载。其二,对于某些特定的程序,先在服务器端执行,然后把执行结果发送到访问者的浏览器中。 
对于各种可在服务器端运行的程序(ASP/ASP.NET /JSP),需要在IIS服务器中设置一份文件映射表,用于标记各类程序需要由服务器端的哪种运行环境负责执行,并说明了支持其运行的动态链接库。 
文件映射表包含的文件类别越多,服务器支持的文件类别就越多,给远程攻击提供的机会也越多。 
访问权限: 
对于IIS服务器下的每个虚拟目录,都可以设置远程用户对它的访问权限。 
“读取”权限指远程访问者只能读取该虚拟目录下的文档,是最基本权限; 
“运行脚本”权限允许远程访问者启动并执行某些脚本程序,ASP及ASP.NET程序就应存储在具有“运行脚本”权限的虚拟目录中。 
“目录浏览”的权限使远程用户能够获得该虚拟目录中所有文件的名称列表、并可以任意下载这些文件。  
(2)IIS服务器安装 
启动IIS服务器安装(演示): 
注意选择安装ASP.NET模块 
简单测试安装是否成功: 
检查InetPub文件夹;在InetPub文件夹的WWWroot下制作记事本文件;在本机和其他计算机上,用IE浏览器测试Web服务器是否能成功地访问 
安装.NET Framework框架: 
检查服务器当前配置;如果.NET Framework版本过低,则重新安装新版本的.NET Framework。 
注意:安装顺序:先IIS,后.NET Framework框架。如果顺序错误,则需要利用命令:aspnet_regiis –i重新注册.Net Framework框架的相关文件。 
开始-运行-cmd,进入到命令提示符状态; 
以cd \windows\microsoft.net\framework,进入到该文件夹下,然后进入v2.0.0.***的文件夹 
执行命令: aspnet_regiis –i. 
(3)配置IIS虚拟目录 
配置虚拟目录的方法:右单击网站——选择“新建”——“新建虚拟目录”;指定别名——指定实际文件夹;设置针对虚拟目录的访问权限 
虚拟目录权限:读取;目录浏览;执行脚本;执行;写入 
设置虚拟目录的默认文档: 
默认文档:在URL中仅指出虚拟目录名时,系统自动调用的文档 
通过虚拟目录“属性”设置“默认文档” 
限制访问虚拟目录的人: 
可通过IP地址、用户登录等限制应用系统的访问者 
通过虚拟目录的“属性”设置IP限制 
3、本地发布ASP.NET网站 
(1)ASP.NET应用系统发布 
在本地计算机发布网站 
①清理并生成项目,做好准备工作 
打开一个已经完成的项目,首先在【解决方案资源管理器】中右单击“解决方案”,从弹出的快捷菜单中选择“清理解决方案”。当清理解决方案完成后,再选择“重新生成解决方案” 
②发布项目,形成产品 
右单击项目名称,在弹出的快捷菜单中选择“发布”,则打开“发布Web”的对话框;设置在本地发布的文件夹名称;执行【发布】命令

三、重点习题

单选题

1. 在以下HTML语言标记中,正确表示一个1行1列表格的是( )。

A)<table><td><tr></tr></td></table> B)<table><tr><td></td></tr></table>

C)<table><tr><td></tr></td></table> D)<table><td><tr></td></tr></table>

2.下列HTM标记中,负责设置超链接的标记是( )。

A)<A href=> B) <A link= > C)<TABLE > D)<DIV>

3.在Dreamweaver网页制作中,给网页添加信息框(弹出信息),应利用( )面板。

A)代码 B)文件 C)行为 D)应用程序

4. 在VS2008的Web窗体中,单击Button控件后,能够执行客户端脚本的属性是( )。

A) Click B) OnClick C) onClientClick D) OnCommand

5.如果想在页面点击某一个链接之后,在上一级窗口(父框架)打开页面,那么在创建链接时必须设置"目标"属性为( )。

A) _blank B) _parent C) _self D) _top

6. 在网页中,下列什么对象不能作为超级链接的源( )。

A) 文字 B) 图片 C) 热点区域 D) flash动画

7.下列关于表格的说法,不正确的是( )。

A) 表格可以嵌套 B) 可以对表格添加超链接

C) 表格可以通过样式表来进行修饰 D) 表格可以用来辅助网页布局

8.在以Dreamweaver设计网页过程中,为了避免网页中链接的对象带有包含盘符的本地绝对路径,常用的方法是( )。

A) 建立用户文件夹,把网页所需的全部文件存储在该文件夹中

B) 建立本地站点,把网页所需的全部文件存储在本地站点对应的文件夹中

C) 建立与服务器的映射关系,要求服务器实时检测网页状态

D) 没有什么专门的方法

9.在dreamweaver中,有关图层说法错误的是( )。

A) 图层是网页中的一个区域,一个网页中可以有多个图层。

B) 多个图层可以重叠,重叠的图层可以转换为表格。

C) 图层可以在可见、隐藏和默认3种状态之间切换。

D) 嵌套的图层就是将一个图层创建在另一个图层里。

10.关于SqlDataSource控件的论断,错误的是( )。

A) 可以连接SQL Server数据库和Access数据库

B) 可以执行SQL Server中的存储过程

C) 可以插入、删除、修改和查询数据

D) 控件中不允许使用参数

(二)多选题

1、在以ASP.NET设计动态网页的过程中,通常可以使用( )控件来输入相关人员所在单位的信息(每个人员只隶属于一个单位)。

A) RadioButton B) RadioButtonList C) DropDownList D) CheckBox

2.图像映射上的热点区域可以是以下( )形状中的一种。

A) 矩形 B) 圆形 C) 任意多边形 D) 椭圆形

(三)填空题

1.在Dreamweaver网页制作中,网页特效通常通过( )语言实现。

2. 如果需要在打开当前窗口时自动弹出一个新的浏览器窗口,应该针对Body的( )事件添加“打开浏览器窗口”的命令。

3.连接字符串是数据库访问技术中的关键信息。在连接字符串中,通常使用( )符号表示本地的VS2008自带的简化版SQL Server 2005服务器。

4.如果自行开发Web系统的登录模块,通常把通过验证的账号信息和权限信息存储在( )中,以便这些变量能够跨页面使用。

5.在以ASP.NET技术开发动态网页时,( )控件可用于输出数据表的内容,此控件每页可以输出多条记录,以表格方式显示记录的内容。

6.在ASP.NET中依靠SqlDataSource访问数据库的过程中,为了使用带有参数的SQL语句实现数据插入,通常可以借助其( )属性。

7.在VS2008的Web窗体中,如果要确保用户输入的数据必须满足某种特定的格式规则,那么应该使用( )验证控件。

8.在Web服务器的虚拟目录中,通常存在许多个文档。为了使Web服务器快度地定位到网站的主文档,通常为虚拟目录设置( )。

简答题

1. 网页中的对象(图像、图片、音乐)通过什么方式与HTML文档发生联系?在网页设计过程中,如何才能保证在复制网页时不遗漏相关文档?

2、如何在网页中实现弹出警示框效果?

(五)综合设计题

1.静态网页设计

已知,某网页index.html的半成品状态如图所示,请根据要求完成以下操作:

(1)设置网页标题为“首届39健康节正式启动”,设置本网页的背景色为#ffffdd;

(2)在位置1中依次插入如下内容:

1)插入图像“logo.gif”;

2)插入一个层,并在层中完成如下设置:首先插入一行文字“关注健康,人人有责”,然后设置这行文字为滚动字幕;

(3)在位置2中插入图像“zhuanti.jpg”。

(4)附加样式表文件main.css, 设置文字“39健康节特别行动—为灾区重建加油”的格式为“标题1”。

(5)设置在网页被浏览时,自动弹出浏览器窗口,在小窗口中显示文档“link.html”的内容。

2.动态网页设计

已知,某SQL Server 2005数据库xsgl的相关文件被存储在C盘的DB文件夹中,而且在“服务器资源管理器”中建立了名字为“学生数据”的数据链接。

目前,数据库xsgl中存储了多张数据表:学生信息表、用户表、课程表、成绩表等信息。其中用户表中包括了用户名、密码、角色、真实姓名和所在单位等字段。

要求:(1)编写如图所示的用户登陆界面。当用户单击“登陆”时,系统应该能够判断输入的用户和密码是否合法。

(2)对于合法用户,应该能够根据用户的角色类别跳转到相应的页面。

  admin类用户,跳转到cdadmin.aspx;“教务员”类用户,跳转到cdjiaowu.aspx;

  “学籍管理员”类用户,跳转到cdxueji.aspx;“武装部”类用户,跳转到cdjunxun.aspx。

请写出响应按钮“登陆”的Click事件的关键代码

四、重点习题参考答案(答案仅供参考)

(一)单选题

1.B 2.A 3.C 4.C 5.B 6.D 7.B 8.B 9.B 10.D

(二)多选题

1. ABC  2.ABC

(三)填空题

1、JavaScript 2、onLoad 3、.\SqlExpress 4、Session 5、GridView

6、InsertQuery 7、RegularExpressionValidator 8、默认文档(主文档)

考试指导使用说明:

    本考试指导只适用于201903学期6月期末考试使用,包括正考和重修内容。指导中的章节知识点涵盖考试所有内容,给出的习题为考试类型题,习题答案要点只作为参考,详见课程讲义或笔记。如果在复习中有疑难问题请到课程答疑区提问。最后祝大家考试顺利!

电话咨询