动态网站大作业
《动态网站程序设计---Asp.net 》
大作业
学期:2013-2014-2 班级:
学号:2 姓名:
成绩:
1. 动态网站相关基础内容
1.1动态网站基本概念(2分)
答:动态网页就是根据用户的请求,由服务器动态生成的网页,用户发出请求后从服务器获得生成的动态结果,并以网页的形式显示在浏览器中。动态网页的网页文件里包含程序代码,并且动态网页以数据库技术为基础。 1.2 静态网页与动态网页比较(2分) 答:静态网页:(1)每个网页都有一个固定的URL 。且网页的URL 以HTM,HTML,SHTML 等常见形式为后缀。(2)静态网页是实实在在保存在服务器上的文件,每个网页都是一个独立的文件。(3)内容相对稳定,容易被收索引擎检索。(4)交互性较差,在功能方面有很大的限制。(5)没有数据库的支持,在网站维护和制作方面工作量较大。 动态网页:(1)以数据库技术为基础,可以降低网站维护的工作量。(2)网站可以实现更多的功能,例如注册,登陆,在线调查等。(3)并不是独立于服务器上的网页,只有当用户请求服务器才返回一个完整的网页。
1.3 动态网站实现技术、各自特点及比较(3分)
答:实现技术:ASP ,PHP ,JSP ;各自特点及比较:ASP 更精确的说是一个中间件;PHP 是一种HTML 内嵌式的语言;JSP 页面由HTML 代码和嵌入其中的Java 代码所组成。 1.4 ASP.NET特点,页面处理过程(3分)
答:特点:提供Web 窗体的关系式程序模、强大功能和扩充性、强大的服务器端功能、服务器端控件、网站的一致化设计、网站的会员管理、网站的个性化、全新的数据处理控件、网页组件控件、提供更多的网站设定和管理工具; ASP.NET 页面的处理过程:
(1) 用户通过客户端浏览器请求页面,页面第一次运行,执行初步处理。 (2) 执行的结果以标记的形式呈现给浏览器,浏览器对标记进行解释并显示。 (3) 用户键入信息或从可选项中进行选择,或者单击按钮。
(4) 页面发送到Web 服务器,在ASP.NET 中称此为“回发”,即页面发送回其自
身。
(5) 在Web 服务器上,该页再次运行,并且使用用户输入或选择的信息。 (6)服务器将运行后的页面以HTML 或XHTML 标记的形式发送到客户端的浏览器。
2. 常用内置对象
2.1常用内置对象简单说明(3分)
答:ASP.NET 定义了多个常用对象,例如:Response 、Requst 、Server 、Cookie 对象,它们可以直接使用而不必事先声明。每个对象有各自的属性、属性集合、方法、事件
2.2 response对象(3分)
1)response 对象的作用 答:向客户端输出数据。
2)response 对象的常用属性、方法
答:常用属性:Buffer 、cache 、charset 、expires 、cookies ; 常用方法:Clear 、End 、Flush 、Redirect 、Write
3)应用
要实现的功能描述:重定向,把当前网页转到百度 代码:string httpString = "http://www.baidu.com";
Response.Redirect(httpString);
运行结果截图:
2.3 request对象(3分)
1)request 对象的作用
答:使服务器获取从客服端浏览器提交或上传的信息。 2)request 对象的常用属性、方法:
答:常用属性:Browser 、Cookies 、path 、UrlReferrer 常用方法:QueryString 、Cookies 、Form 3)应用
要实现的功能描述:向页面输出数据
代码:Response.Write("变量ID 的值:" + Request.QueryString["ID"] + "
"); Response.Write("变量Name 的值:" + Request.QueryString["Name"]);
运行结果截图:
2.4 server对象(3分) 1)server 对象的作用
答:处理服务器上的特定任务。 2)server 对象的常用属性、方法:
答:常用属性:MachineName 、ScriptTimeout 常用方法:HtmEncode(string)、HtmlDecode(string)、UrlEncode(string)、UrlDecode(string) 3)应用
要实现的功能描述:server 的Ì?Html 编À¨¤码? 和¨ª解a 码? 代码:Response.Write("你? 好?
");
Response.Write(Server.HtmlEncode("您¨²好?")+"
");
Response.Write(Server.HtmlDecode(Server.HtmlEncode("何? 西¡Â西¡Â,ê? 你? 好? !ê?
")));
运行结果截图:
2.5 cookie对象(3分)
1)cookie 对象的作用
答:持久化地保存用户信息。
2)cookie 对象的常用属性、方法:
答:常用属性:Expires 、Name 、Value
常用方法:Add 、Append 、Clear 3)应用
要实现的功能描述:使用Cookie 对象保存和读取客户端信息 代码:string userName;
if(Request.Cookies["UserName"]!=null)
userName=Request.Cookies["UserName"].Value; Response.Write("Cookie:"+Request.Cookies);
运行结果截图:
3. ASP.NET服务器控件
3.1 VS开发环境中,包括哪些控件?常用服务器控件有哪些?服务器控件特点(2分) 答:包括的控件:Html 元素、Html 控件、ASP .NET 服务器控件;常用控件:Label 、TextBOox 、Button 、LinkButton 、ImageButton 、HyperLink 、ListBox 、DropDownLis 、RadioButton 、CheckBox 、 CheckBoxList 、Image 、Panel 、FileUpload ;服务器控件特点:可以在后他代码中通过对其ID 属性访问,从而在服务器端对他们进行编程和处理。 3.2 listbox/dropdownlist(2分) 1)应用:关于LsitBox 控件的应用
2)要实现的功能描述:在下拉列表中选择,并在标签中显示出选项。 3)代码:
mso-fareast-language :ZH-CN;mso-bidi-language :AR-SA;mso-no-prrof :yes">请? 选? 择? 你? 喜2欢? 的Ì?一°?门? 课? 程¨¬;
语?文? 数ºy学¡ë 英¡é语? 体¬?育y
String mystr = "" ;
foreach (ListItem it in ListBox1.Items) if (it.Selected == true )
mystr = mystr + it.Text + " ";
Label1.Text = " 谢? 谢? 你? 的Ì?参? 与?,ê?你? 的Ì?选? 择? 是º?:êo" + mystr;
4)运行结果截图:
3.3 panel/radiobuttonlist/checkboxlist(3分)
1)应用:关于checkboxlist 控件的应用
2)要实现的功能描述:选择复选框中内容,并通过按钮在线面的标签中显示出选中项 3)代码:
string mystr = "", mystr1 = "";
if (CheckBox1.Checked == true) mystr = CheckBox1.Text; if (CheckBox2.Checked == true)
mystr = mystr + "" + CheckBox2.Text; if (CheckBox3.Checked == true)
mystr = mystr + "" + CheckBox3.Text; if (CheckBox4.Checked == true)
mystr = mystr + "" + CheckBox4.Text; foreach (ListItem it in CheckBoxList1.Items) if (it.Selected == true)
mystr1 = mystr1 + it.Text + "";
Label1.Text = "你? 选? 择? 的Ì?诗º?人¨?是º?:êo" + mystr + "
" + "其? 对? 应|的Ì?作Á¡Â品¡¤为a :êo" + mystr1;
4
)运行结果截图:
3.4 fileupload(3分)
1)要实现的功能描述:创建一个文件上传网页 2)代码: if (FileUpload1.HasFile) {
string fileExtension =
System.IO.Path.GetExtension(FileUpload1.FileName);
string fileUpDirection = Server.MapPath("~//UploadFile//");
if (fileExtension != ".jpg") {
Response.Write("文? 件t 上¦? 传ä? 失º¡ì败㨹!ê?"); } else {
FileUpload1.PostedFile.SaveAs(fileUpDirection + FileUpload1.FileName);
Response.Write("文? 件t 上¦? 传ä? 成¨¦功|!ê?");
3)运行结果截图:
4. 数据验证
要求:设计用户注册页面,在页面内的数据验证,包括以下验证内容: 非空、范围、比较、格式验证(电话格式、Email 格式) 1)页面截
图
2
)
代
码
截
图
5. ADO.NET
5.1 ADO.NET概述(3分)
5.2 数据库连接处理及连接结果显示(4分)
1)要实现的功能描述:验证数据库的连通
2)代码:string sqlStr = @"Data Source=i52431\SQLEXPRESS;Initial Catalog=StuInfo;Integrated Security=True";//定¡§义°? 连¢? 接¨字Á?符¤? 串ä?
//string
sqlStr=System.Configuration.ConfigurationManager.ConnectionStrings["sqlConStr"].ToString();//定¡§义°? 连¢? 接¨字Á?符¤? 串ä?
SqlConnection mycon = new SqlConnection(sqlStr);//建¡§立¢¡é一°? 个?sqlConnection 类¤¨¤型¨ª的Ì? 连¢? 接¨对? 象¨ mycon.Open();//打䨰开a 链¢¡ä接¨ Response.Write(mycon.State);//测a 试º? 连¢? 接¨是º? 否¤? 成¨¦功| mycon.Close();
3)运行结果截图:
5.3 读取数据库中表的数据(4分)
要求:使用dataset/datareader读数据
1)要实现的功能描述:用datareade 读取数据 2)代码:String strConn; public baseClass() {
strConn
ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString; } //读写数据表--DataT able
=
public DataTable ReadTable(String strSql) { DataTable dt=new DataTable();//创建一个数据表dt
SqlConnection Conn = new SqlConnection(strConn);//定义新的数据连接控件并初始化
Conn.Open();//打开连接
SqlDataAdapter Cmd = new SqlDataAdapter(strSql, Conn);//定义并初始化数据适配器
Cmd.Fill(dt); //将数据适配器中的数据填充到数据集dt 中 Conn.Close();//关闭连接 return dt; } //读写数据集--DataSet
public DataSet ReadDataSet(String strSql) { DataSet ds=new DataSet();//创建一个数据集ds
SqlConnection Conn = new SqlConnection(strConn);//定义新的数据连接控件并初始化
Conn.Open();//打开连接
SqlDataAdapter Cmd = new SqlDataAdapter(strSql, Conn);//定义并初始化数据适配器
Cmd.Fill(ds); //将数据适配器中的数据填充到数据集ds 中 Conn.Close();//关闭连接 return ds; }
//执行update\insert\delete等sql 语句 public int execSql(string sqlStr) {
SqlConnection con=new SqlConnection (strConn); con.Open ();
SqlCommand cmd = new SqlCommand(sqlStr, con); try {
cmd.ExecuteNonQuery(); con.Close(); }
catch {
con.Close(); return 0;
}
return 1; }
//用dataReader 读数据
public SqlDataReader readrow(String sql) {
SqlConnection Conn = new SqlConnection(strConn); Conn.Open();
SqlCommand Comm = new SqlCommand(sql, Conn); SqlDataReader Reader = Comm.ExecuteReader();
if (Reader.Read()) {
Comm.Dispose(); return Reader; } else {
Comm.Dispose(); return null;
3)运行结果截图:
6. 数据绑定
6.1简单数据绑定(5分)
6.1.1简单数据绑定
1)要实现的功能描述:单值绑定 2)代码:
3)运行结果截图:
6.1.2列表框数据绑定
说明:用字符数组、hashtable 对列表框性质的控件进行数据绑定 1)要实现的功能描述:通过设置数据源绑定表列控件 2)代码:
3)运行结果截图:
6.2 gridview控件绑定数据,并进行数据的处理(13分)
6.2.1 读取数据库中表数据,并显示
1)要实现的功能描述:GridView 控件绑定数据源 2)代码:
3)运行结果截图:
6.2.2 删除表中某行数据
1)要实现的功能描述:对显示数据进行删除 2)代码:
3)运行结果截图:
6.2.3 修改表中某行数据 1)要实现的功能描述: 2)代码:
3
)
运
行
结
果
截
图
:
6.2.4 分页/排序算法 1)要实现的功能描述: 2)代码:
3)运行结果截图:
6.3 datalist控件(5分)
1)要实现的功能描述:DataList 数据绑定 2)代码:
3)运行结果截图:
6.4 repeater控件(4分)
1)要实现的功能描述:在Repeater 控件中显示数据 2)代码:
3)运行结果截图:
7. 典型功能实现
7.1 注册功能(4分) 1)代码:
public partial class Registerwy : System.Web.UI.Page {
protected void Page_Load(object sender, EventArgs e)
{
}
public class baseClass
{
String strConn;
public baseClass()
{
strConn =
ConfigurationManager.ConnectionStrings["sqlconstr"].ConnectionString;
}
public int execSql(string sqlStr)
{
SqlConnection con = new SqlConnection(strConn);
con.Open();
SqlCommand cmd = new SqlCommand(sqlStr, con);
try
{
cmd.ExecuteNonQuery();
con.Close();
}
catch
{
con.Close();
return 0;
}
return 1;
}
}
protected void Button1_Click(object sender, EventArgs e)
{
string sexstr;
if(RadioButton2.Checked==true)
sexstr=RadioButton2.Text;
else
sexstr=RadioButton1.Text;
string sqlstr="insert into stu_info(stu_id,name,birthday,sex,major,sdept) values('"+stuid.Text+"','"
+UserName.Text +"','"+ birthday.Text+"','"+sexstr+"','"+major.Text +"','"+sdept.Text +"')";
baseClass a = new baseClass();
int b=a.execSql(sqlstr);
if (b == 1)
Label9.Text = "注Á¡é册¨¢成¨¦功|!ê?";
}
}
2)运行结果截图:
7.2 登录功能(4分)
1)代码:
protected void Page_Load(object sender, EventArgs e)
{
}
public class baseClass
{
String strConn;
public baseClass()
{
strConn =
ConfigurationManager.ConnectionStrings["sqlconstr"].ConnectionString; }
public SqlDataReader readrow(String sql)
{
SqlConnection Conn = new SqlConnection(strConn);
Conn.Open();
SqlCommand Comm = new SqlCommand(sql, Conn);
SqlDataReader Reader = Comm.ExecuteReader();
if (Reader.Read())
{
Comm.Dispose();
return Reader;
}
else
{
Comm.Dispose();
return null;
}
}
}
protected void Button1_Click1(object sender, EventArgs e)
{
baseClass bc = new baseClass();
string sql="select * from stu_info where name='"+admin.Text+"' and
stu_id='"+password.Text+"'";
if (bc.readrow(sql)!=null)
{
//Response.Redirect("http://localhost/Loginwy.aspx"); Label1.Text="登Ì?录? 成¨¦功|";
}
else
Label1.Text = "密¨¹码? 或¨°账? 号? 错䨪误¨!ê?"; }
2)运行结果截图:
7.3 数据库设计(4分)
题目:《音乐网站管理》
需求分析:
1、用户管理:1)注册功能
2)登录功能
3)浏览信息
2、管理者管理:1)登录功能
2)添加,修改网站信息
3)删除网站信息
3、数据库设计:
UserInfo()
AdminiInfo()
MusicInfo()
NewInfo()
4、公共类设计:
连接数据库
7.4 配置文件(4分)
(webconfig)
7.5 编程规范、项目文件是否规范等内容。(4分)