专题四-网站设计与研发_第1页
专题四-网站设计与研发_第2页
专题四-网站设计与研发_第3页
专题四-网站设计与研发_第4页
专题四-网站设计与研发_第5页
已阅读5页,还剩143页未读 继续免费阅读

下载本文档

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

文档简介

网站设计和开发Sunday,February5,2023第2页教学重点网站的工作原理HTMLJAVACRIPTASP.NET与ASPIIS服务器的安装与配置ASP.NET网站开发的知识准备Sunday,February5,2023第3页网站的构成要素静态网页Web服务器动态网页静态网页-HTML<html><head> <title>网页标题</title></head><body> <h1>标题一</h1>

网页内容。</body></html>标题标记段落级标记块标记字符级标记列表水平标尺标记<HR>字体标记<FONT>IMG标记静态网页-HTML<HTML> <HEAD> <TITLE>欢迎学习HTML</TITLE> </HEAD> <BODYBGCOLOR=lavender> <H3>我的第一个HTML文档</H3> <P>这将是一种很有趣的体验

<H2>使用另一个标题</H2> <P>另一个段落元素

<ADDRESS> <P><Ahref="/">单击此处访问北京阿博泰克北大青鸟信息技术有限公司的主页</A> </ADDRESS> </BODY></HTML>静态网页-HTML<HTML> <HEAD> <TITLE>学习HTML</TITLE> </HEAD> <BODY>

<DIV>

第1部分

<P>元素用于组织元素

<P>DIV通常用于块级元素

</DIV>

<DIValign=right>

第2部分

<P>这是第二部分

<BR> <H2>您觉得有意思吗?</H2>

</DIV> <P>第二部分向右对齐。

<SPANSTYLE="font-size:25">

公共格式</SPAN>应用于这一部分中的所有元素

</BODY></HTML>

静态网页-HTML<HTML> <HEAD> <TITLE>学习HTML</TITLE> </HEAD> <BODY> <OL> <LI>星期一

<LI>星期二

<LI>星期三

<LI>星期四

<LI>星期五

</OL> </BODY></HTML>静态网页-HTML<HTML> <HEAD> <TITLE>欢迎使用HTML</TITLE> </HEAD> <BODY> <H3><FONTSIZE=3COLOR=HOTPINKFACE="隶书">我的第一个HTML文档</FONT></H3> <P>这<FONTCOLOR=BLUESIZE=6>将会</FONT>是一种很有趣的体验

</BODY></HTML>静态网页-HTML<HTML> <HEAD> <TITLE>插入图像</TITLE> </HEAD><BODY> <H1><FONTSIZE=3COLOR=FORESTGREEN> <B>插入图像</B></FONT></H1><HR> <P> <IMGALIGN=BOTTOMSRC=cats.jpg>底部对齐</P> <P>图2.15:示例15的输出结果<IMGALIGN=TOPSRC=cats.jpg>顶部对齐</P> <P><IMGALIGN=MIDDLESRC=cats.jpg>居中对齐</P> </BODY></HTML>Sunday,February5,2023第10页静态网页通常这些网页只有HTML标记,没有其他可以执行的程序代码。网页的内容是静态不变的网址形式通常为:/index.htm静态网页的后缀名一般为:.htm.html.shtml.xml使用静态网页,如果要修改网页内容,就必须修改源代码,然后重新上传到服务器上。(在网站制作和维护方面工作量较大,在功能方面也有较大的限制)静态页面工作原理Sunday,February5,2023第12页Web服务器根据用户的Web浏览器发送的请求提供相应文件的一种软件也称为HTTP服务器常用的Web服务器包括:微软的IIS(Internet信息服务器)网景的企业服务器(NES)ApacheHTTP服务器等这一时期的Web设计更像是平面设计,而不是程序设计。这样设计出来的页面,只能呈现静态的文本和图像,无法提供满足用户需求的交互模式,也无法展示动态的信息。静态网页的缺点Sunday,February5,2023第14页什么是动态网页动画、Flash、applet等所谓动态网页只是视觉上的,与真正的“动态网页”是不同的概念。示例“动态”主要指的是“交互性”动态网页中不仅含有HTML标记,而且含有可以执行的程序代码,动态网页能够根据不同的输入和请求动态生成返回的页面,例如常见的BBS、留言板、聊天室等就是用动态网页来实现的。动态网页的后缀名:.aspx.asp.jsp.php等等动态网页又分:客户端动态网页和服务器端动态网页客户端动态:由浏览器上的模块(插件)完成创建动态网页的全部工作。服务器端动态:由Web服务器处理请求后生成对应的网页发送回浏览器动态页面工作原理动态网页和静态网页的区别:核心区别:是否在服务器端运行!动态网页中的某些脚本只能在服务器端运行,而静态网页中的任何脚步都不能在服务器端运行。动态网页中可以同时包含客户端脚本和服务器脚本,而静态网页中只能包含客户端脚本。后缀名差别:静态:.html.htm

动态:.asp.aspx.jsp.php等等Sunday,February5,2023第18页ASPASP全称为ActiveServerPages(中文译名为活动服务器页面),是微软公司推出的用于Web应用服务的一种编程技术语法简单,易学易用。asp采用的脚本语言:VBScript和JavaScript。代码嵌入到HTML语言中。JavaScript简介JavaScript简介前身叫作LiveScript,是一种基于对象(Object)和事件驱动(EventDriven)、并具有安全性能的脚本语言。JavaScript与Java是两个公司开发的两个不同的产品,作用与用途大不一样,但两者语法上有很多多相似之处,JavaScript并不是Java的子集。JavaScript、Jscript与ECMAScripthttp://http:///scripting什么是JavaScriptJavaScript是一种脚本语言<html><scriptlanguage=“javascript”>

alert(newDate());</script></html>提供用户交互

动态更改内容数据验证将JavaScript嵌入网页可以将JavaScript语句插入HTML文档,方式如下:在HTML标记中直接写入JavaScript代码使用<SCRIPT>标签将语句嵌入文档将JavaScript源文件链接到HTML文档中在HTML标记中直接写入JavaScript代码<HTML><BODY>

<Ponmouseover="alert('欢迎您学习JavaScript!')">鼠标移过来</P></BODY></HTML>

运行将脚本程序代码作为属性值<ahref=“javascript:alert(newDate());”>javascript</a><inputtype=buttononclick=“alert(new

Date())”value=t/>使用Script标签JavaScript代码<HTML><HEAD><SCRIPTlanguage="JavaScript">document.write("欢迎来到JavaScript世界");</SCRIPT></HEAD><BODY><P>尽情享受学习的快乐!!!</BODY></HTML>脚本代码设置语言脚本代码的位置JavaScript代码可以放置在HTML任何位置<script>varx=3;</script><p>这是一个HTML段落</p><script>alert(x);</script><p>这是一个HTML段落</p><script>varx=3;alert(x);</script><scriptlanguang=“javascript”><!—

alert(newdate());--></script>使用外部JS文件外部JavaScript文件(*.js)可以链接到HTML文档中SCRIPT标签的SRC(源文件)属性可用于包括此外部文件<scriptlanguage=“JavaScript”src=“文件名.js"></script>

使用外部JS文件JavaScript代码(test.htm)<HTML><HEAD><TITLE>使用外部文件</TITLE><SCRIPTSRC="test.js"></SCRIPT></HEAD><BODY><P>以上文本是通过访问外部JavaScript文件显示的</BODY></HTML>document.write("喂!你好吗?")JavaScript代码(test.js)JavaScript的基本语法JavaScript中的标识符标识符是指JavaScript中定义的符号,例如,变量名,函数名,数组名等。标识符可以由任意顺序的大小写字母、数字、下划线(_)和美元符号($)组成,但标识符不能以数字开头,不能是JavaScript中的保留关键字。合法的标识符举例:indentifler、username、user_name、_userName、$username非法的标识符举例:int、98.3、HelloWorldJavaScript严格区分大小写computer和Computer是两个完全不同的符号JavaScript程序代码的格式每条功能执行语句的最后必须用分号(;)结束,每个词之间用空格、制表符、换行符或大括号、小括号这样的分隔符隔开。JavaScript程序的注释/*…….*/中可以嵌套“//”注释,但不能嵌套“/*….*/”JavaScript中保留的关键字abstractbooleanbreakbytecasecatchcharclasscontinuedefaultifforfloatfinallyfinalfalseextendselsedoubledoimplementsimportinstanceintinterfacelongnativenewnullbackagethissynchronizedswitchsuperstaticshortreturnpublicprotectedprivatethrowthrowstransienttruetryvoidvolatilewhile基本数据类型与常量整型常量十六进制以0x或0X开头,例如0x8a。八进制必须以0开头,例如:0123。十进制的第一位不能是0(数字0除外),例如:123。实型常量12.32、192.98、5E7、4e5等。布尔值true和false.null常量undefined常量字符串型常量“thisisJavaScriptppt”、’abc’、“a”、“”。字符串中的特殊字符,需要以反斜杠(\)后跟一个普通字符来表示,例如:\r、\n、\t、\b、\’、\”、\\.声明变量

var

a;

“var”-用于声明变量的关键字“a”-变量名同时声明和初始化变量vara=10;a=10;声明变量声明多个变量varx,y,z=10;赋值声明变量<HTML><HEAD><TITLE>使用变量</TITLE><SCRIPTLANGUAGE="Javascript">var

x;x=prompt("淘宝网竟拍,请出一口价",1);document.write("拍卖价格"+x+"<BR>")//"+"用来连接多个字符串document.write("恭喜您,您以最高价拍卖成功!");alert("欢迎下次光临!");</SCRIPT></HEAD></HTML>定义变量赋值输出prompt(“提示信息”,”默认值”)将弹出提示对话框,接受用户的输入。点击确定返回输入的字符串,点击取消反馈空字符串。

eval(字符串):将传入的字符串参数内容,转换成相应的数值,例如:

y=eval(“15”)+8;结果:y=23

parseInt(字符串,[底数]):将传入的字符串,转换成指定底数的数值。

parseFloat(字符串):将传入的字符串,转换成浮点数值。

举例数据类型转换运算符算术运算符赋值运算符比较运算符逻辑运算符位运算符算术运算符+

加法运算符或正值运算符,例如:x+5,+6。“+”还能实现多个字符串的相加,也能将字符串与其它的数据类型连成一个新的字符串,条件是该表达式中至少有一个字符串,例如:“x”+123的结果是“x123”.-

减法运算符或负值运算符,例如:7–3,-8.*

乘法运算符,例如:3*6./

除法运算符,例如,9/4.%

求模运算符(也就算术中的求余)5/2.++

将变量值加1后再将结果赋给这个变量。“++”有两种用法:++x,x++. 1。前者是变量在参与其它运算之前先将自己加1后再用新的 值参与其它的运算。例如:b=++a是a先自增,即a的值 加1后,才赋值给b; 2。后者是先用原值参与其它运算后,再将自己加1,例如: b=a++是先将a赋值给b后,a再自增。--将变量值减1后再将结果赋给这个变量,与++的用法一样。程序的流程控制顺序结构if条件选择语句switch选择语句while循环语句dowhile语句for循环语句break与continue语句函数函数的作用与定义全局变量与局部变量参数个数可变的函数创建动态函数JavaScript中的系统函数函数的作用。。。。。。。。。。函数1。。。。。。。。。。函数2。。。。。。。。。。函数1。。。。。。。。。。主程序。。。。。函数3。。。。。。。。。函数1。。。。。。。。。。。。函数2。。。。。。。。。。。。函数3函数的定义与调用定义一个函数的格式如下:function函数名(参数列表){

程序代码:

return表达式;}对函数进行调用的几种方式:1.函数名(传递给函数的参数1,传递给函数的参数2,…)2.变量=函数名(传递给函数的参数1,传递给函数的参数2,…)3.对于有返回值的函数调用,也可以在程序中直接使用返回的结果,例如:alert(“sum=”+square(2,3));变量a、b和c只能在其各自的函数中被访问变量的作用域脚本函数function1局部变量a函数function2局部变量b函数function3局部变量c可由函数1、函数2和函数3访问全局变量gg全局变量不需要以var

关键字进行声明,但局部变量则必须以此关键字来声明参数个数可变的函数<scriptlangusge=“javascript”>functiontestparams(){

var

params=“”;

for(vari=0;i<arguments.length;i++)

params=params+””+arguments[i];

alert(params);}testparams(“abc”,123);testparams(123,456,“abc”);</script>在函数内部使用arguments对象来访问调用程序传递的所有参数创建动态函数创建动态函数的基本语法格式:var

varName=newFunction(argument1,….,lastArgument);说明:所有的参数都必须是字符串型的,最后参数必须是这个动态函数的功能代码。例子:<scriptlanguage=“javascript”>

varsquare=newFunction(“x”,“y”,“varsum;sum=x*x+y*y;returnsum;”);alert(square(3,2));</script>JavaScript函数内置函数

eval

函数:用于计算字符串表达式的值

isNaN

函数:用于验证参数是否为NaN(非数字)JavaScript代码<SCRIPTLANGUAGE="JavaScript">varstr1=prompt(“输入一个表达式,我给您计算","1+1");varresult=eval(str1);document.write(str1+"="+result);varx=prompt("输入一些数据","0");if(isNaN(x))

alert(x+"不是一个数字");else

alert(x+"是一个数字");</SCRIPT>对象对象与对象实例构造方法与this关键字的作用在对象函数中变量作用域的问题JavaScript的内部对象对象与对象实例对象中所包含的变量就是对象的属性;对属性进行操作的函数就是对象的方法;对象的属性和方法都叫对象的成员。对象是对某一类事物的描述,是抽象上的概念;而对象实例是一类事物中的具体个例。能够被用来创建对象实例的函数就叫对象的构造函数,只要定义了一个对象的构造函数就等于定义了一个对象,使用new关键字和对象的构造函数就可以创建对象实例,语法格式如下:var

objInstance=newObjName(传递给该对象的实际参数列表);JavaScript对象简介三类对象

浏览器对象

内部对象HTML对象浏览器窗口window文档documenturl地址等String字符串对象Date日期对象Math数学对象等

各种HTML标签:段落<P>图片<IMG>超链接<A>等构造方法与this关键字为一个对象实例新增加的属性和方法,不会增加到同一个对象所产生的其它对象实例上。所有的实例对象在创建后都会自动调用构造函数,在构造函数中增加的属性和方法会被增加到每个对象实例上。对象实例是用new关键字创建的,在构造方法中不要有返回结果的return语句。调用对象的成员方法时,需要使用“对象实例.成员方法”的形式,很显然,用作成员方法的函数被调用时,一定伴随有某个对象实例。this关键字代表某个成员方法执行时,引用该方法的当前对象实例,所以,this关键字一般只在用作对象方法的函数中出现。<scriptlanguage=“javascript”>functionPerson(name,age){

this.age=age;

=name;

this.say=sayFunc;}functionsayFunc(){

alert(+”:”+this.age);}varperson1=newPerson(“张三”,18);person1.say();varperson2=newPerson(“李四”,20);person2.say();</script>JavaScript的内部对象动态对象使用“对象实例名.成员”的格式来访问其属性和方法静态对象直接使用“对象名.成员”的格式来访问其属性和方法。Object对象String对象Math对象Date对象toString方法Object对象Object对象提供了一种创建自定义对象的简单方式,不需要程序员再定义构造函数。

<scriptlanguage=“javascript”> functiongetAttributeValue(attr) {

alert(person[attr]); }

varperson=newObject();

=“zs”;

person.age=18;

getAttributeValue(“name”);

getAttributeValue(“age”); </script>String对象创建字符串有两种不同方法:使用

var

语句

var

newstr=“这是我的字符串”;创建String对象var

newstr=newString(“这是我的字符串”)

String对象名称说明属性length返回字符串的长度

方法big()增大字符串文本blink()使字符串文本闪烁(IE浏览器不支持)bold()加粗字符串文本

fontcolor()确定字体颜色

italics()用斜体显示字符串

indexOf(“子字符串”,起始位置

)查找子字符串的位置strike()显示加删除线的文本

sub()将文本显示为下标

……toLowerCase()将字符串转换成小写

toUpperCase()将字符串转换成大写语法:indexOf(“查找的子字符串”,查找的起始位置)返回子字符串所在的位置,如果没找到,返回-1例如:varxvary=“abcdefg”;x=y.indexOf(“c”,0);//返回结果为2,起始位置是0String对象charAt方法:返回指定位置的字符注意:一个字符串的第一个字符的索引位置为0,依次类推。charCodeAt方法:返回指定位置字符的Unicode编码lastIndexOf方法:从右向左执行match、search方法:使用正则表达式搜索replace方法:使用正则表达式替换split方法:按照指定分隔符拆分字符串slice方法:返回两个指定位置的子字符串说明:str1.slice(0)和str1.slice(0,-1)都是返回整个字符串。substr、substring方法:返回指定位置和长度的子字符串注意:substring方法返回的内容不包含结束位置的字符。Math对象Math对象是一个静态对象,不能使用new关键字创建对象实例,应直接使用“对象名。成员”的格式访问其属性或方法,例如:varnum=Math.random();Math对象名称说明属性PI∏的值,约等于

3.1415LN1010的自然对数的值,约等于2.302EEuler的常量的值,约等于2.718。Euler的常量用作自然对数的底数abs(y)返回

y的绝对值sin(y)返回

y的正弦,返回值以弧度为单位。cos(y)返回

y的余弦,返回值以弧度为单位tan(y)返回

y的正切,返回值以弧度为单位min(x,y)返回

x和y两个数中较小的数max(x,y)返回

x和y两个数中较大的数

random返回0-1的随机数方法round(y)四舍五入取整sqrt(y)返回

y的平方根Math.random():产生0-1的随机小数Math.round():四舍五入取整,如9.34取整为9<HTML><HEAD><METAhttp-equiv="refresh"content="2"><TITLE>自动刷新</TITLE><SCRIPTlanguage="JavaScript">document.write("2秒自动刷新,随机显示图片");

vari=0;i=Math.round(Math.random()*8+1);

document.write("<IMGwidth=640height=433src="+i+".jpg>");</SCRIPT></HEAD><BODY>

</BODY></HTML>Math对象假定随机产生的数字i=3,上述代码即为:<IMGwidth=640height=433src=3.jpg>显示第三幅图片(3.jpg)如何实现每隔2秒刷新网页Math.round(Math.random()*8+1)产生1-9的数字Date对象Date对象存储的日期为自1970年1月1日00:00:00以来的毫秒数var

日期对象=newDate(年、月、日等参数)例:var

mydate=newDate(“July29,1998,10:30:00”)如果没有参数,表示当前日期和时间例:vartoday=newDate()

Date对象方法分组说明setxxx这些方法用于设置时间和日期值getxxx

这些方法用于获取时间和日期值Toxxx这些方法用于从

Date对象返回字符串值parsexxx&UTCxx这些方法用于解析字符串Data方法的分组:Date对象值整数Seconds和minutes0至59Hours0至23Day0至6(星期几)Date1至31(月份中的天数)Months0至11(一月至十二月)用作Date方法的参数的整数:Date对象方法说明setDate设置

Date对象中月份中的天数,其值介于1至31之间。setHours设置Date对象中的小时数,其值介于0至23之间。setMinutes设置

Date对象中的分钟数,其值介于0至59之间。setSeconds设置

Date对象中的秒数,其值介于0至59之间。setTime设置

Date对象中的时间值。setMonth设置

Date对象中的月份,其值介于1至12之间。Set方法:Date对象方法说明getDate返回

Date对象中月份中的天数,其值介于1至31之间getDay返回

Date对象中的星期几,其值介于0至6之间getHours返回Date对象中的小时数,其值介于0至23之间getMinutes返回

Date对象中的分钟数,其值介于0至59之间getSeconds返回

Date对象中的秒数,其值介于0至59之间getMonth返回

Date对象中的月份,其值介于0至11之间getFullYear返回

Date对象中的年份,其值为四位数getTime返回自某一时刻(1970年1月1日)以来的毫秒数Get方法:Date对象方法说明ToGMTString使用格林尼治标准时间(GMT)数据格式将Date对象转换成字符串表示ToLocaleString使用当地时间格式将Date对象转换成字符串表示方法说明Date.parse(datestring)用日期字符串表示自

1970年1月1日以来的毫秒数

Date.UTC(year,month,day,hours,min.,secs.)Date对象中自

1970年1月1日以来的毫秒数

To方法:Parse方法和UTC方法<HTML><BODY><scriptlanguage="javaScript">varnow=newDate();varhour=now.getHours();if(hour>=0&&hour<=12)

document.write("上午好!")if(hour>12&&hour<=18)

document.write("下午好!");if(hour>18&&hour<24)

document.write("晚上好!");document.write("<P>今天日期:"+now.getYear()+"年“

+(now.getMonth()+1)+"月"+now.getDate()+"日");document.write("<P>现在时间:"+now.getHours()+"点"+now.getMinutes()+"分");</script></body></HTML>Date对象如何实现获得当前日期和时间获得小时,即当前是几点判断上午、下午还是晚上月份数字0-11,注意+1Date对象setTimeout的用法:

setTimeout(“调用的函数”,”定时的时间”)例:

var

myTime=setTimeout(”disptime()”,1000);

clearTimeout(myTime);隔1000毫秒调用函数disptime()执行关闭定时器本例的时间可以采用定时显示,使用定时器函数,隔1秒调用disptime()函数显示时间Date对象无边框的文本框myclockvar

myTime=

setTimeout("disptime()",1000);设置定时器隔1秒(1000毫秒),调用函数disptime()执行,刷新时钟显示toString方法toString方法是JavaScript中的所有内部对象的一个成员方法,它的主要作用就是将对象中的数据转换成某种格式的字符串来表示,具体的转换方式取决于对象的类型。举例:<scriptlanguage=“javascript”>varx=328;alert(“hes=”+x.toString(16)+

”bin=”+x.toString(2));</script>for…in举例<scriptlanguage=“javascript”>functionPerson(){

=“sky”;

this.age=19;

this.height=172;}varp1=newPerson();varprop,str=“”;for(propinp1){

str+=;}alert(str);</script>数组数组列表用对象的方式实现数组Array对象数组声明数组

var

数组名=newArray(数组大小);

例:var

emp=newArray(3)添加元素

emp[0]=“AA";emp[1]=“BB";emp[2]=“CC";AABBCCemp

也可以声明数组并赋初值:例:var

emp=newArray(“AA”,“BB”,“CC”);Array对象三种构造方法Array()Array(4)Array(3.4,“abc”,3)数组列表数组列表用于表示一组数据的集合,它由一对方括号([])包围,列表中的每个元素用逗号分隔,数组元素可以是任类型的数据(包括其他数组)。例如:

var

arr=[“sky”,123,‘li’,3.5];对于每个数组变量,都有一个length属性,表示该数组中元素的个数。使用“数组变量名[索引号]”的格式来访问每个数组元素。数组列表中的第一个元素的索引号为0,最后那个元素的索引号为数组的length属性值减1.数组列表的每个元素既可以是有效的JavaScript表达式,也可以为空,空元素的值为undefined.例如:

var

arr=[1,,,,5];数组元素本身又是数组,就叫数组的数组,例如:[[“names”,“beansproul”,“pumpkin”,“max”],[“ages”,6,5,4]]使用“数组变量名[子数组索引号][子数组中的元素索引号]”的格式来访问数组的数组中的元素。数组常用属性

length

:返回数组中元素的个数常用方法方法说明join将数组中的元素组合成字符串reverse颠倒数组元素的顺序,使第一个元素成为最后一个,而最后一个元素成为第一个sort对数组元素进行排序<scriptlanguage=“javascript”>var

arr=[[“names”,“beansproul”,“pumpkin”,“max”],[“ages”,6,5,4]]for(vari=0;i<arr.length;i++){

for(varj=0;j<arr[i].length;j++){

alert(arr[i][j]);}}</script>用对象的方式实现数组<scriptlanguage=“javascript”>functionMyArray(){

this.length=arguments.length;

for(varI=0;i<this.length;i++){

this[i]=arguments[i];}}var

str=“”;var

arr=newMyArray(4,3.4,“abc”);for(vari=0;i<arr.length;i++){

str+=arr[i]+”\n”;}alert(str);</script><scriptlanguage=“javascript”>functionMyArray(size){

this.length=size;

for(varj=0;j<size;j++){

this[j]=“”;}}var

arr=newMyArray(2);arr[0]=3;arr[1]=“abc”;arr[2]=4;aarx,str=“”;for(xinarr){

str+=x+“:“+arr[x]+”\n”;}alert(str);</script>Sunday,February5,2023第76页ASP.NET(ASP的发展)微软公司很快公布了其宏伟的“Windows.NET”计划,发布了成为下一代网络服务框架的NGWS,同时将其ASP技术升级为ASP+2000年11月,微软公司推出VisualStudio.NET7.0开发工具的Beta版本,将NGWS更名为.NETFramework,此时ASP+也正式改名为现在的ASP.NET。ASP.NET与

ASP相比速度更快,功能更加强大。ASP.NET与.net框架的关系搭建ASP.NET开发运行环境最重要的是安装.NETFramework,即.net框架。.NET框架.NET框架(.NETFramework)是一套应用程序开发和运行的平台或者环境,而ASP.NET则是这个平台中的一部分,主要负责WEB应用程序的开发,为WEB应用程序开发提供接口,因此要想利用ASP.NET技术开发WEB应用程序,必须安装.NET框架。Sunday,February5,2023第78页.NET框架CLR:为基于.net平台的一切操作提供一个统一的运行环境。.net类库(基类库):是.net应用软件开发的基础类库,也是.NET平台本身的实现基础。ADO.NET为.net框架提供统一的数据访问技术。Sunday,February5,2023第79页技术特点多语言支持VisualBasic.NETVisualC++C#Jscript.NET多平台支持所有支持.NET的Windows平台性能强大的性能和可伸缩性ASP.NET

的多语言支持代码编译执行___________________________代码编译Microsoft中间语言(MSIL或IL)

JIT

编译器机器语言分别编译IL

的每一部分Sunday,February5,2023第81页C#与ASP.NETC#语言是一门简单,现代,优雅,面向对象,类型安全,平台独立的一门新型组件编程语言很多人学ASP.NET,不知道用好还是c#好,看

简单就选择了,结果学了接近两个月才在几个高手朋友的指点下,改成C#,当然,我这不是说VB.net不好,只是说c#的代码看起来简洁点。而且目前绝大多数公司使用C#.IIS服务器InternetInformationServer(简称IIS)是Windows系统提供的一种服务,它包括WWW服务器、FTP服务器和SMTP服务器,是架设个人网站的首选。

程序→运行→inetmgr

Windows2000Server在安装的过程中会自动安装IIS5.0,而Windows2000Professional和WindowsXP则不会,必须用添加Windows组件的方式另行安装。下面以WindowsXP为例,介绍安装IIS5.1的过程。1.安装IIS

安装IIS的步骤如下:

①从桌面的“开始”菜单中选择“控制面板”,打开“控制面板”。双击“添加或删除程序”图标,打开“添加或删除程序”对话框。

②用鼠标单击左边的“添加/删除Windows组件”图标,打开“Windows组件向导”(图1-12)。

图1-12Windows组件向导

选中“组件”列表中的“Internet信息服务(IIS)”选项,单击“下一步”按钮,组件向导即开始安装所选组件。在安装向导的最后一页单击“完成”按钮,完成组件的安装。2.Internet信息服务器在“控制面板”中双击“管理工具”图标,打开“管理工具”对话框,在其中双击“Internet信息服务”图标,打开Internet信息服务器窗口,如图1-13所示。图1-13Internet信息服务器窗口

3配置IIS虚拟目录是Web

服务器使用的逻辑目录名,与服务器上的物理目录相对应使用IIS

创建虚拟目录步骤1:在“默认Web站点”中创建一个虚拟目录。步骤2:给出此虚拟目录的别名。步骤3:选择虚拟目录的位置。步骤4:为此目录选择适当的访问权限。激活浏览器,在地址栏中输入本机的网址,如http://localhost/4.测试IISVS2008的下载及破解.net自学手册1-VisualStudio2008的下载及破解/show.asp?id=1133HTML+C#+ADO.NET+access/SQLserver理论学习要求ASP.NET开发程序的一般步骤Web窗体的IDEWeb窗体的IDE菜单栏和工具栏工具箱解决方案资源管理器服务器资源管理器“属性”窗口创建Web应用程序在.NET环境中使用VisualC#构建一个ASP.NETWeb应用程序已创建虚拟目录按照提供的名称创建解决方案和项目,同时还创建了默认引用和文件默认的Web

应用程序文件创建的文件说明WebForm1.aspx和WebForm1.aspx.cs文件它们组成一个单独的Web窗体页。.aspx

文件包含Web窗体页的可视化元素,而.aspx.cs

则包含用于Web窗体页的代码隐藏类AssemblyInfo.cs

项目信息文件,包含有关某一个项目中程序集的元数据Web.config

存储应用程序配置信息Global.asax

和Global.cs文件用于处理应用程序级事件的可选文件Styles.css

级联样式表文件.vsdisco

文件基于XML

的文件,包含的链接指向为XMLWeb服务提供发现信息的资源Global.asax2-1“Global.asax”存储所有事件的事件处理程序存储在应用程序的根目录下它的位置定义应用程序的限界

包含所有应用程序的配置设置Global.asax2-2httpApplication类实例事件事件处理程序Global.asax配置设置存储于文件事件说明Application_Start调用当前应用程序目录(或其子目录)下的第一个ASP.NET页面时触发。Application_End应用程序的最后一个会话结束时触发。用Internet服务管理器管理单元停止Web应用程序时也会触发Application_BeginRequest每次页面请求开始时触发(理想情况下是在页面加载或刷新时)Application_EndRequest每次页面请求结束时(即每次在浏览器上执行页面时)触发Session_Start每次新的会话开始时触发Session_End会话结束时触发。(关于会话可以采用何种方式结束,请参见会话对象)利用提供的内置对象,可以实现页面之间的数据传递及实现一些特定的功能,如:缓冲输出,页面重定向等等。ResponseRequestServerApplicationSessionCookieResponse对象作用:将动态生成的信息嵌入到HTML文档中,然后发送到客户端;缓冲输出数据;重定向浏览器到另一个URL;向浏览器输出Cookie文件。其类名为httpResponseResponse对象常用属性和方法Write()

向客户端发送字符串信BufferOutPut

属性,是否使用缓存Buffer 属性,是否使用缓存ContentType

属性,指定输出文档的类型Clear() 清除缓存Flush() 强制输出缓存的所有数据Redirect()

网页转向地址End() 终止当前页的运行WriteFile() 读取一个文件,并且写入客户端输出流向浏览器输出数据

Response对象可以将一些动态生成的信息插入到网页中,需要使用如下形式:Response.write

其中,不管表达式的结果是什么类型,最终都作为字符串插入到网页中。向浏览器输出数据例:在网页中嵌入动态信息<%@language=VBScript%><%dimd,m,yd=day(date())m=month(date())y=year(date())%><HTML><BODY>

<%

Response.write"今天是"&y&"年" &m&"月"&d&"日<BR>"%> </BODY></HTML>注意:如果直接将脚本代码嵌入到HTML中,则它必须包含在<%和%>之间。向浏览器输出数据程序清单处理Page_Load事件,添加如下代码:Response.Write("专业名称列表:");Response.Write("<ul>");Response.Write("<li>计算机网络技术");Response.Write("<li>计算机信息管理");Response.Write("<li>软件技术与开发");Response.Write("<ul>");向浏览器输出数据Response输出客户端脚本弹出对话框Response.Write("<scriptlanguage=javascript>alert('欢迎学习ASP.NET')</script>")

Response.Write("<scriptlanguage=vbscript>msgbox(""hello!"")</script>")打开一个新的IE窗口Response.Write("<script>window.open(‘WebForm2.aspx')</script>")RegisterStartupScript("","<script>alert('信息有误!')</script>");向浏览器输出数据Response的缓冲输出

ASP.NET提供了缓冲机制,能够将要输出到客户端数据首先保存在服务器的缓存区域,当处理完整个Response响应之后再一次性地发给客户端,这样能够大大加快访问和处理数据的速度。

Response对象的BufferOutPut或Buffer属性,指示是否缓冲Response的输出:

Response.BufferOutput=True;

Response.Buffer=True;向浏览器输出数据与缓冲输出对应的几个方法Clear() 清除缓存Flush() 强制输出缓存的所有数据End() 终止当前页的运行程序清单4.5

Response.BufferOutput=True;

Response.Write("专业名称列表:");

Response.Write("<ul>");

Response.Write("<li>计算机网络技术");

Response.Write("<li>计算机信息管理");

Response.Write("<li>软件技术与开发");

Response.Write("<ul>");

Response.Clear();

Response.Write("<scriptlanguage=javascript>alert('欢迎学习ASP.NET')</script>");

Response.Flush();向浏览器输出数据输出内容指定浏览器请求一网页时,服务器会将一个HTML文档发送给客户端浏览器,服务器也可以使用Response对象的ContentType属性指明向浏览器发送的是其他类型的文档。指明发送给客户端浏览器的是什么类型的文档,可使用如下形式:

Response.ContentType[=内容类型]内容类型的书写格式为“类型/子类型”:默认值: “text/HTML”纯文本: “text/plain”

Word文档: “application/MSWord”

图片: “image/GIF”使页面转向(页面重定向)使用Response对象的redirect方法可以把用户引导到指定的某个网页。形式如下:Response.redirect

网页地址例如:

Response.Redirect("");使页面转向(页面重定向)在按钮事件中根据选择的用户身份登录到不同的页面程序清单4.7(VB语言实现)PrivateSubbtnLogin_Click(ByValsenderAsSystem.Object,

ByValeAsSystem.EventArgs)HandlesbtnLogin.Click

SelectCasetxtName.Text

Case"admin"

Response.Redirect("ManagePage.aspx")

Case"teacher"

Response.Redirect("TeacherPage.aspx")

CaseElse

Response.Redirect("StudentPage.aspx")

EndSelectEndSub停止向页面输出数据Response.End()终止当前页的运行程序清单

Response.BufferOutput=True;

Response.Write("专业列表");

Response.Write("<ul>");

Response.Write("<li>计算机网络");

Response.Write("<li>软件技术");

Response.Write("</ul>");

Response.End();

Response.Write("<scriptlanguage=javascript>

alert('Welcometolearn')</script>");

Response.Flush();向浏览器输出文件Response.WriteFile(FileName)

其中:FileName

指需向浏览器输出的文件名。作用:直接将文件中的内容嵌入到页面中,下面是文件的内容程序清单<hr><h1>Title1</h1><br><h2>Title2</h2><br><b>BoldText</b><br><u>UnderLineText</u><p>List:<ul><li>ListItem1<li>ListItem2<li>ListItem3</ul><inputtype="text"><inputtype="button"value="Login"><hr>Request对象作用:Request对象主要是让服务器取得客户端浏览器的一些数据,包括从HTML表单用Post或者GET方法传递的参数、Cookie和用户认证。因为Request对象是Page对象的成员之一,所以在程序中不需要做任何的声明即可直接使用;其类名为HttpRequest使用Request.Form属性获取数据通过该属性,读取<Form></Form>之间的表单数据.

注意:提交方式要设置为“Post”。与Get方法相比较,使用Post方法可以将大量数据发送到服务器端。

不推荐使用利用Request.QueryString属性获取数据

Request对象的QuerySting属性可以获取HTTP查询字符串变量集合。

通过该属性,我们可以读取地址信息

http://localhost/aaa.aspx?uid=tom&pwd=abc

其中标识为红色部分的数据.注意:提交方式要设置为“Get”。简化Request操作问题:Request.Form用于表单提交方式为Post的情况,而Request.QueryString

用于表单提交方式为Get的情况,如果用错,则获取不到数据。解决方法:利用Request(“元素名”)来简化操作

If(!IsPostBack){ddlcomputer.Items.Add("计算机网络技术");

ddlcomputer.Items.Add("计算机信息管理");

ddlcomputer.Items.Add("软件技术与开发");

ddlcomputer.SelectedIndex=0;

rblSex.Items.Add("男");

rblSex.Items.Add("女");

rblSex.SelectedIndex=0;Me.Button1.Text="登录";}Response.Write(Request("ddlcomputer"));Response.Write(Request("rblSex"));Response.Write(Request("TextBox1"));获取客户端浏览器信息

Response.Write("<p>客户端浏览器为:"+HttpContext.Current.Request.Browser.Browser);Response.Write("<p>客户端浏览器版本为:"+HttpContext.Current.Request.Browser.Version);Response.Write("<p>客户端访问的网址为:"+HttpContext.Current.Request.Url);Response.Write("<p>客户端主机为:"+HttpContext.Current.Request.UserHostAddress);Server对象Server对象简介

Server对象提供对服务器上的方法和属性进行的访问

.其类名称是HttpServerUtility.Server对象的主要属性有:MachineName:获取服务器的计算机名称。ScriptTimeout:获取和设置请求超时(以秒计)。Server对象Server对象的常用方法方法名称说明CreateObject创建

COM对象的一个服务器实例。Execute执行当前服务器上的另一个aspx页,执行完该页后再返回本页继续执行HtmlEncode对要在浏览器中显示的字符串进行HTML编码并返回已编码的字符串。HtmlDecode对HTML编码的字符串进行解码,并返回已解码的字符串。MapPath返回与

Web服务器上的指定虚拟路径相对应的物理文件路径。Transfer终止当前页的执行,并为当前请求开始执行新页。UrlEncode将代表URL的字符串进行编码,以便通过

URL从

Web服务器到客户端进行可靠的

HTTP传输。UrlDecode对已被编码的URL字符串进行解码,并返回已解码的字符串。UrlPathEncode对

URL字符串的路径部分进行

URL编码,并返回已编码的字符串。向浏览器输出HTML代码编码:Server.HtmlEncode(“HTML代码”)解码:Server.HtmlDecode(“已编码的HTML”)Stringstr="<fontcolor='red'><i>Server对象的使用</i></font>“;Response.Write("字符串不经Html编码直接输出:<br>");Response.Write(str);Response.Write("<p>字符串经过Html编码后输出:<br>");StringstrHtmlContent=Server.HtmlEncode(str);Response.Write(strHtmlContent);Response.Write("<p>对编码后的字符串进行解码:<br>");strHtmlContent=Server.HtmlDecode(strHtmlContent);Response.Write(strHtmlContent);获取文件路径

Server对象的MapPath方法将虚拟路径或相对于当前页的相对路径转化为Web服务器上的物理文件路径。语法:Server.MapPath(“虚拟路径”)

实例:

stringFilePath=Server.MapPath(“index.aspx”)

Response.Write(FilePath);

Sever.MapPath(“./”)表示所在页面目录

Sever.MapPath(“~/”)表示当前应用级程序的目录Transfer方法和Execute方法Transfer的执行方式:第一个页面跳转到第二个页面时,页面处理的控制权也进行移交,但浏览器的Url仍保存第一个页面的URL信息。这种重定向请求在服务器端执行,客户端并不知道服务器执行页面跳转操作。Execute的执行方式:允许当前页面执行同一web服务器的另一页面,当另一页面执行完毕后,控制流程重新返回到原页面。

比较下列代码:Server.Transfer("hello.aspx");Server.Execute("hello.aspx");Response.Redirect("hello.aspx");Application对象什么叫WEB应用程序?

ASP.NET应用程序是单个Web服务器上的某个虚拟目录及其子目录范围内的所有文件、页、处理程序、模块和

温馨提示

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

评论

0/150

提交评论