《新闻网站--计算机科学与技术asp-net课程设计报告.doc》由会员分享,可在线阅读,更多相关《新闻网站--计算机科学与技术asp-net课程设计报告.doc(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、xx中医药大学计算机科学与技术课程设计xx中医学院ASP.NET课程设计报告所在院系: 信息技术学院 专业年级: 20xx级 计算机科学与技术 完成学生: xxx xx 指导教师:xx ASP.NET课程设计报告-新闻网站目录1.需求分析31.1网站功能分析:31.2前台显示31.2.1新闻主页31.2.2新闻分类栏目页41.2.3新闻内容页41.2.4会员注册/登录页42.总体设计52.1新闻网站的数据库设计52.2数据库操作的简化方案52.3后台页面的设计62.4前台页面的设计63.详细设计73.1数据库设计73.1.1Admin表73.1.2AdminGrader表73.1.3Frien
2、dLink表83.1.4News表83.1.5Newcategroy表83.1.6UserInfo表93.1.7UserLogin表93.1.8UserReview表93.2后台管理页面详情103.3前台页面详情114.代码编写134.1创建的SqlHelper类135.网站测试226.报告总结与收获251.需求分析1.1网站功能分析:新闻网站的功能包括后台新闻的录入,编辑,审核,新闻的发布,用户名的注册,最新消息显示在网页顶端等,网站会员的管理,系统管理员的管理等功能;前台的新闻浏览,会员的注册登录,以及对新闻的评论等功能.1.2前台显示前台的页面显示部分,一般有3页组成,及新闻主页.新闻栏
3、目页和新闻内容页.新闻主页用于显示新闻列表,这样有利于浏览者选择感兴趣的新闻,新闻栏目页帮助浏览者查找某类新闻,内容页用于显示某个单条新闻.1.2.1新闻主页(1)显示所有新闻分类(2)按新闻分类显示其下最新几条新闻(3)显示最新的前几条新闻(4)显示最热门的前几条新闻(5)网站友情链接(6)登录.注册链接(7)后台管理链接1.2.2新闻分类栏目页(1)按新闻分类显示其下的所有新闻(2)显示最新的前几条新闻(3)显示最热门的前几条新闻1.2.3新闻内容页(1)显示新闻的详细内容(2)显示该新闻的网友评论,设置为登录会员可以评论(3)显示最新的前几条新闻1.2.4会员注册/登录页当浏览者想要了解
4、更多的新闻或者参加评论时,他需要注册才能实现这些功能。读者在前台注册以后,管理员可以看到其信息,可以看是否符合要求,如不可以的话可以不同意。在登录的时候,需要正确的输入验证码才可以。2.总体设计2.1新闻网站的数据库设计数据库(newsDB)新闻分类表新闻表会员表会员登记表会员评论表管理员表管理员级别表友情连接表2.2数据库操作的简化方案(1) 配置web.config2.3后台页面的设计后台页面后台主页模板页后台登录页后台管理员的添加/编辑新闻页添加/编辑2.4前台页面的设计前台页面前台新闻模板页新闻首页新闻内容页新闻栏目页3.详细设计3.1数据库设计3.1.1Admin表3.1.2Admi
5、nGrader表3.1.3FriendLink表3.1.4News表3.1.5Newcategroy表3.1.6UserInfo表3.1.7UserLogin表3.1.8UserReview表3.2后台管理页面详情3.3前台页面详情4.代码编写4.1创建的SqlHelper类 public static int GetExecuteNonQuery(string sqlStr, params SqlParameter values) OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; c
6、md.Parameters.AddRange(values);/添加参数集 int result = cmd.ExecuteNonQuery(); CloseConnection(); cmd.Parameters.Clear(); return result; public static object GetExecuteScalar(string sqlStr) OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; object result = cmd.ExecuteScalar()
7、;/执行SQL语句 CloseConnection(); return result;/返回获得的单个值 public static object GetExecuteScalar(string sqlStr, params SqlParameter values) OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; cmd.Parameters.Clear(); cmd.Parameters.AddRange(values); object result = cmd.ExecuteSc
8、alar(); CloseConnection(); cmd.Parameters.Clear(); return result; public static SqlDataReader GetExecuteReader(string sqlStr) OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; SqlDataReader reader = cmd.ExecuteReader(); /这里不能关闭连接CloseConnection(),要在调用中关闭 return reader;
9、public static SqlDataReader GetDataReader(string sqlStr, params SqlParameter values) OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; cmd.Parameters.AddRange(values); SqlDataReader reader = cmd.ExecuteReader(); /这里不能关闭连接CloseConnection(),要在调用中关闭 cmd.Parameters.Clear();
10、 return reader; public static DataSet GetDataSet(string sqlStr) SqlDataAdapter da = new SqlDataAdapter(); OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; da.SelectCommand = cmd; DataSet ds = new DataSet(); da.Fill(ds); CloseConnection(); return ds;/返回DataSet对象 public
11、static DataSet GetDataSet(string sqlStr, params SqlParameter values) SqlDataAdapter da = new SqlDataAdapter(); OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; cmd.Parameters.AddRange(values); da.SelectCommand = cmd; DataSet ds = new DataSet(); da.Fill(ds); CloseConnec
12、tion(); cmd.Parameters.Clear(); return ds;/返回DataSet对象 public static DataSet GetDataSet(string sqlStr, string tableName) SqlDataAdapter da = new SqlDataAdapter(); OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; da.SelectCommand = cmd; DataSet ds = new DataSet(); da.Fi
13、ll(ds, tableName); CloseConnection(); return ds;/返回DataSet对象 public static DataTable GetDataTable(String sqlStr) OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; DataTable dt = new DataTable();/创建一个数据表dt SqlDataAdapter da = new SqlDataAdapter(cmd);/定义并初始化数据适配器 da.Fill(
14、dt);/将数据适配器中的数据填充到数据集dt中 CloseConnection(); return dt; public static DataTable GetDataTable(string sqlStr, params SqlParameter values) OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; cmd.Parameters.AddRange(values); DataSet ds = new DataSet(); SqlDataAdapter da = new
15、SqlDataAdapter(cmd); da.Fill(ds); CloseConnection(); cmd.Parameters.Clear(); return ds.Tables0; public static DataView GetDataView(string sqlStr) SqlDataAdapter da = new SqlDataAdapter(); DataView dv = new DataView(); DataSet ds = new DataSet(); OpenConnection(); cmd.CommandType = CommandType.Text;
16、cmd.CommandText = sqlStr; da.SelectCommand = cmd; da.Fill(ds); dv = ds.Tables0.DefaultView; CloseConnection(); return dv; public static void GetAlert(string message, Page page) /显示对话框 page.ClientScript.RegisterStartupScript(page.GetType(), , alert( + message + ), false); public static void Alert(str
17、ing message, Page page) /显示对话框 page.Response.Write(function window.onload() alert( + message + );); public static void MsgBox(string message, Page page) /显示对话框 String csname = PopupScript;/定义客户端脚本的名 Type cstype = page.GetType();/定义客户端脚本的类型 ClientScriptManager cs = page.ClientScript;/创建一个ClientScript
18、Manager类 if (!cs.IsStartupScriptRegistered(cstype, csname)/如果脚本没有注册 String cstext = alert( + page.Server.HtmlEncode(message) + ); cs.RegisterStartupScript(cstype, csname, cstext, true); public static void MsgBox(string message, string url, Page page) ClientScriptManager cs = page.ClientScript;/创建一个C
19、lientScriptManager类 String csname = PopupScript;/定义客户端脚本的名 Type cstype = page.GetType();/定义客户端脚本的类型 if (!cs.IsStartupScriptRegistered(cstype, csname)/如果脚本没有注册 String cstext = alert( + page.Server.HtmlEncode(message) + );window.location= + url + ; cs.RegisterStartupScript(cstype, csname, cstext, true
20、); public void AlertBox(string message, string url) System.Web.HttpContext.Current.Response.Write(alert( + message + );location.href( + url + ); public static void CClose(Page page) /Get a ClientScriptManager reference from the Page class ClientScriptManager cs = page.ClientScript; /Define the name
21、and Type of the client script on the page String csname = close; Type cstype = page.GetType(); / builder the script text StringBuilder cstext = new StringBuilder(); cstext.Append(); cstext.Append(window.opener=anyone;window.close();); cstext.Append(); /Check to see if the startup script is already r
22、egistered if (!cs.IsClientScriptBlockRegistered(cstype, csname) cs.RegisterStartupScript(cstype, csname, cstext.ToString(); /或int i = SqlHelper.GetExecuteNonQuery(sqlStr); public static int GetExecuteNonQuery(string sqlStr) OpenConnection();/打开连接 cmd.CommandType = CommandType.Text;/定义为使用SQL语句 cmd.Co
23、mmandText = sqlStr;/初始化Command对象的SQL字符串 int result = cmd.ExecuteNonQuery();/执行SQL语句并返回受影响的行数 CloseConnection();/关闭连接 return result;/返回整数 public static int GetExecuteNonQuery(string sqlStr, params SqlParameter values) OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; cmd
24、.Parameters.AddRange(values);/添加参数集 int result = cmd.ExecuteNonQuery(); CloseConnection(); cmd.Parameters.Clear(); return result; public static object GetExecuteScalar(string sqlStr) OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; object result = cmd.ExecuteScalar();/
25、执行SQL语句 CloseConnection(); return result;/返回获得的单个值 public static object GetExecuteScalar(string sqlStr, params SqlParameter values) OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; cmd.Parameters.Clear(); cmd.Parameters.AddRange(values); object result = cmd.ExecuteScal
26、ar(); CloseConnection(); cmd.Parameters.Clear(); return result; public static SqlDataReader GetExecuteReader(string sqlStr) OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; SqlDataReader reader = cmd.ExecuteReader(); /这里不能关闭连接CloseConnection(),要在调用中关闭 return reader; pu
27、blic static SqlDataReader GetDataReader(string sqlStr, params SqlParameter values) OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; cmd.Parameters.AddRange(values); SqlDataReader reader = cmd.ExecuteReader(); /这里不能关闭连接CloseConnection(),要在调用中关闭 cmd.Parameters.Clear(); r
28、eturn reader; public static DataSet GetDataSet(string sqlStr) SqlDataAdapter da = new SqlDataAdapter(); OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; da.SelectCommand = cmd; DataSet ds = new DataSet(); da.Fill(ds); CloseConnection(); return ds;/返回DataSet对象 public st
29、atic DataSet GetDataSet(string sqlStr, params SqlParameter values) SqlDataAdapter da = new SqlDataAdapter(); OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; cmd.Parameters.AddRange(values); da.SelectCommand = cmd; DataSet ds = new DataSet(); da.Fill(ds); CloseConnecti
30、on(); cmd.Parameters.Clear(); return ds;/返回DataSet对象 public static DataSet GetDataSet(string sqlStr, string tableName) SqlDataAdapter da = new SqlDataAdapter(); OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; da.SelectCommand = cmd; DataSet ds = new DataSet(); da.Fill
31、(ds, tableName); CloseConnection(); return ds;/返回DataSet对象 public static DataTable GetDataTable(String sqlStr) OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; DataTable dt = new DataTable();/创建一个数据表dt SqlDataAdapter da = new SqlDataAdapter(cmd);/定义并初始化数据适配器 da.Fill(dt
32、);/将数据适配器中的数据填充到数据集dt中 CloseConnection(); return dt; public static DataTable GetDataTable(string sqlStr, params SqlParameter values) OpenConnection(); cmd.CommandType = CommandType.Text; cmd.CommandText = sqlStr; cmd.Parameters.AddRange(values); DataSet ds = new DataSet(); SqlDataAdapter da = new Sq
33、lDataAdapter(cmd); da.Fill(ds); CloseConnection(); cmd.Parameters.Clear(); return ds.Tables0; public static DataView GetDataView(string sqlStr) SqlDataAdapter da = new SqlDataAdapter(); DataView dv = new DataView(); DataSet ds = new DataSet(); OpenConnection(); cmd.CommandType = CommandType.Text; cm
34、d.CommandText = sqlStr; da.SelectCommand = cmd; da.Fill(ds); dv = ds.Tables0.DefaultView; CloseConnection(); return dv; public static void GetAlert(string message, Page page) /显示对话框 page.ClientScript.RegisterStartupScript(page.GetType(), , alert( + message + ), false); public static void Alert(strin
35、g message, Page page) /显示对话框 page.Response.Write(function window.onload() alert( + message + );); /调用方法:SqlHelper.Alert(您已经被禁止登录,请关闭本页后稍后再登录!, Page); / / 警告窗口,服务器端弹出alert对话框,弹出对话框而不丢失背景 / / 提示信息,例子:不能为空! / Page类 public static void MsgBox(string message, Page page) /显示对话框 String csname = PopupScript;
36、/定义客户端脚本的名 Type cstype = page.GetType();/定义客户端脚本的类型 ClientScriptManager cs = page.ClientScript;/创建一个ClientScriptManager类 if (!cs.IsStartupScriptRegistered(cstype, csname)/如果脚本没有注册 String cstext = alert( + page.Server.HtmlEncode(message) + ); cs.RegisterStartupScript(cstype, csname, cstext, true); pu
37、blic static void MsgBox(string message, string url, Page page) ClientScriptManager cs = page.ClientScript;/创建一个ClientScriptManager类 String csname = PopupScript;/定义客户端脚本的名 Type cstype = page.GetType();/定义客户端脚本的类型 if (!cs.IsStartupScriptRegistered(cstype, csname)/如果脚本没有注册 String cstext = alert( + page.Server.HtmlEncode(m