Web开发实验一.docx
- 文档编号:26698278
- 上传时间:2023-06-21
- 格式:DOCX
- 页数:16
- 大小:302.82KB
Web开发实验一.docx
《Web开发实验一.docx》由会员分享,可在线阅读,更多相关《Web开发实验一.docx(16页珍藏版)》请在冰豆网上搜索。
![Web开发实验一.docx](https://file1.bdocx.com/fileroot1/2023-6/21/1f1c544a-c96d-4c30-acf6-5e94ae45d825/1f1c544a-c96d-4c30-acf6-5e94ae45d8251.gif)
Web开发实验一
武汉工程大学
计算机科学与工程学院
《Web系统与技术》实验报告一
专业班级
实验时间
学生学号
实验地点
学生姓名
指导教师
实验项目
实验一ASP.NET网站开发基础
实验类别
验证性
实验学时
4
实验目的及要求
实验目的:
熟悉ASP.NET网站的建立、发布和配置;熟悉VS2010界面,掌握网页布局方法;掌握C#基础语法、流程控制与异常处理。
实验内容和要求:
1.参考实验指导书的实验步骤,完成实验1-3。
2.将实验2和实验3的主要代码、运行结果截图填入实验报告。
3.完成思考题
4.就本次实验遇到的问题和收获作出总结。
报告应在2周内完成,并以学号+姓名+实验一为名以班级为单位上交(电子文档)。
成绩评定表
类别
评分标准
分值
得分
合计
上机表现
按时出勤、遵守纪律
认真完成各项实验内容
30分
报告质量
填写内容完整、体现设计过程和结果,实验总结能体现问题和收获
70分
说明:
评阅教师:
日期:
年月日
实验内容
一、利用table、Div和CSS对网页布局。
1.利用table对网页布局的主要代码如下:
TableID="Table1"runat="server">
Table>
100%">
ImageID="ImageLogo"runat="server"Height="66px"
ImageUrl="~/img/logo.gif"Width="105px"/>
center;background-color:
#99ccff">
LinkButtonID="LinkButtonDefault"runat="server">首页
LinkButton>
style="text-align:
center;background-color:
#99CCFF">
LinkButtonID="LinkButtonReset"runat="server">个性重置
LinkButton>
center;background-color:
#99CCFF">
LinkButtonID="LinkButtonRegister"runat="server">注册
LinkButton>
|
#CCFFFF">
登陆状态
|
#33CCCC">
您的位置:
|
浏览效果截图见图1.1:
图1.1
2.利用Div对网页布局的主要代码:
logo
navigation
status
position
3.建立.css文件
/*控制DivCssCss.aspx*/
#logo
{
float:
left;
width:
30%;
}
#navigation
{
background-color:
#99CCFF;
height:
30px;
}
#status
{
background-color:
#CCFFFF;
height:
30px;
}
#position
{
background-color:
#33CCCC;
}
浏览结果截图如图1.2所示:
图1.2
4.利用JavaScript关闭当前窗口
window.close();returnfalse;">关闭
ButtonID="btnClose"runat="server"
onclientclick="javascript:
window.close();returnfalse;"Text="Button"/>
浏览器运行结果如图1.3所示
图1.3
二、创建C#类并应用于ASP.NETWeb窗体中的方法
1.转换输入的成绩到相应的等级
主要代码:
TextBoxID="txtInput"runat="server"ontextchanged="txtInput_TextChanged">
TextBox>
ButtonID="btnSubmit"runat="server"onclick="btnSubmit_Click"Text="等级"/>
LabelID="lblDisplay"runat="server"Text="Label">
Label>
类函数:
publicpartialclass_Default:
System.Web.UI.Page
{
protectedvoidPage_Load(objectsender,EventArgse)
{
}
protectedvoidtxtInput_TextChanged(objectsender,EventArgse)
{
}
protectedvoidbtnSubmit_Click(objectsender,EventArgse)
{
floatfGrade=float.Parse(txtInput.Text);
intiGrade=(int)(fGrade/10);
switch(iGrade)
{
case10:
case9:
lblDisplay.Text="优秀";
break;
case8:
lblDisplay.Text="良好";
break;
case7:
lblDisplay.Text="中等";
break;
case6:
lblDisplay.Text="及格";
break;
case5:
case4:
case3:
case2:
case1:
case0:
lblDisplay.Text="不及格";
break;
}
}
浏览效果截图如图2.1
图2.1
2.在WEB窗体上输出九九乘法表
publicpartialclass_Default:
System.Web.UI.Page
{
protectedvoidPage_Load(objectsender,EventArgse)
{
//控制行数
for(inti=1;i<=9;i++)
{
//输出1行
for(intj=1;j<=i;j++)
{
//输出一个乘法算式
Response.Write(i.ToString()+"*"+j.ToString()+"="+(i*j).ToString());
//输出两个空格
Response.Write("  ");
}
//换行输出
Response.Write("
");
}
}
}
浏览效果如图2.2
图2.2
3.输入一组空格间隔10个以内的整数,输出该数组的降序排列
TextBoxID="txtInput"runat="server">
TextBox>
ButtonID="btnSubmit"runat="server"onclick="btnSubmit_Click"Text="降序"/>
publicpartialclass_Default:
System.Web.UI.Page
{
protectedvoidPage_Load(objectsender,EventArgse)
{
}
protectedvoidbtnSubmit_Click(objectsender,EventArgse)
{
//获取文本框中输入的字符串,并在最后添加一个空格
stringsInput=txtInput.Text.Trim()+"";
//j控制数组下标,每个aInput数组储存一个整数,temp储存一个整形字符串
intj=0;
int[]aInput=newint[10];
stringtemp="0";
//逐个获取sInput中每个字符,若不是空格将该字符连接到temp中
//否则,将temp值转换为整数后储存到数组元素
for(inti=0;i<=sInput.Length-1;i++)
{
if(sInput.Substring(i,1)!
="")
{
temp+=sInput.Substring(i,1);
}
else
{
aInput[j]=int.Parse(temp);
j++;
temp="0";
}
}
//升序排列数组
Array.Sort(aInput);
//反转数组顺序
Array.Reverse(aInput);
foreach(intiinaInput)
{
if(i!
=0)//数组元素不为0
{
Response.Write(i+"  ");
}
}
}
}
浏览效果如图2.3所示
图2.3
4.计算两个数的商
TextBoxID="txtDivsor"runat="server">
TextBox>
TextBoxID="txtDividend"runat="server">
TextBox>
ButtonID="btnSubmit"runat="server"Text="提交"onclick="btnSubmit_Click"/>
publicpartialclass_Default:
System.Web.UI.Page
{
protectedvoidPage_Load(objectsender,EventArgse)
{
try
{
floatdivsor=float.Parse(txtDivsor.Text);
floatdivident=float.Parse(txtDividend.Text);
Response.Write("商为:
"+divsor/divident);
}
catch(Exceptionee)
{
Response.Write("请输入正确的数字!
");
}
}
}
浏览结果如图2.4所示
图2.4
5.设计用户信息类UserInfo。
publicclassUserInfo
{
privatestring_Name;
privateDateTime_Birthday;
publicstringName
{
get
{
return_Name;
}
set
{
_Name=value;
}
}
publicDateTimeBirthday
{
get
{
return_Birthday;
}
set
{
_Birthday=value;
}
}
publicUserInfo(stringname,DateTimebirthday)
{
//
//TODO:
在此处添加构造函数逻辑
//
this.Name=name;
this.Birthday=birthday;
}
publicstringDecideAge()
{
if(DateTime.Now.Year-_Birthday.Year<18)
{
returnthis._Name+",您还没长大呢!
";
}
else
{
returnthis._Name+",您是成人了!
";
}
}
}
6.将UserInfo类应用于Web窗体中
protectedvoidbtnSubmit_Click(objectsender,EventArgse)
{
stringname=txtName.Text;
stringbirthday=txtBirthday.Text;
UserInfouserInfo=newUserInfo(name,DateTime.ParseExact(birthday,"yyyymmdd",null));
Response.Write(userInfo.DecideAge());
}
测试浏览结果如图2.5:
图2.5
思考题
1.说明修饰符public,internal,protected,protectedinternal,private的区别。
答:
public,internal,protected,protectedinternal和private都是类型修饰符,只是各自的范围不同。
被public修饰的类或数据类型具有公有访问权限,访问不受限制;被internal修饰的类只能在同一个程序集中被访问,同一个程序集就是同一个dll或exe程序集;protected修饰是保护的访问权限,只限于本类和子类访问,实例不能访问;protectedinternal修饰是内部保护访问,只限于本项目或是子类访问,其他不能访问;private修饰是私有访问权限,只限于本类成员访问、子类、实例都不能访问。
2.以实验三中的操作为例,简单说明在WebSiteApplication中定义一个类,并在窗体中应用它的操作过程。
答:
在解决方案资源管理器的站点所在盘符下,右击App_Code文件夹,选择“添加新项”→“类’模板,将其重命名为UserInfo.cs,单击”添加按钮“,然后双击UserInfo.cs,就可以进入类项目根据要求编写代码。
实验总结
通过对Web程序设计理论课以及这四次课时的上级学习实践,我熟悉了VS2010的开发环境,也对ASP.NET网站开发有了一定了解。
比如使用不同的方法对网页布局、利用CSS文件控制网页样式、建立XML文件、还有一些C#的语言规范及语法以及创建C#类并应用于ASP.NETWeb窗体中的方法。
学习一门新的课程,特别是像ASP.NET网站开发这样的实践型的课程,一定要注意一边操作一边学习,趁早发现问题并及时解决,这样才能达到最好的学习效果。