搜索
您的当前位置:首页正文

新闻网站-计算机科学与技术ASP NET课程设计报告

来源:意榕旅游网


新闻网站-计算机科学与技术ASP NET课程设计报告

xx中医药大学计算机科学与技术课程设计

xx中医学院

《ASP.NET课程设计报告》

所在院系: 信息技术学院 专业年级: 20xx级 计算机科学与技术 完成学生: xxx xx 指导教师:xx

2

xx中医药大学计算机科学与技术课程设计

ASP.NET课程设计报告-新闻网站

目录

1.需求分析 ............................. 3 1.1网站功能分析: .................... 3 1.2前台显示 ......................... 3 1.2.1新闻主页 ..................... 3 1.2.2新闻分类栏目页 ............... 4 1.2.3新闻内容页 ................... 4 1.2.4会员注册/登录页 .............. 4 2.总体设计 ............................. 5 2.1新闻网站的数据库设计 ............. 5 2.2数据库操作的简化方案 ............. 5 2.3后台页面的设计 ................... 6 2.4前台页面的设计 ................... 6 3.详细设计 ............................. 7 3.1数据库设计 ....................... 7 3.1.1Admin表 ...................... 7 3.1.2AdminGrader表 ................ 7 3.1.3FriendLink表 ................. 8 3.1.4News表 ....................... 8

3

xx中医药大学计算机科学与技术课程设计

3.1.5Newcategroy表 ................ 8 3.1.6UserInfo表 ................... 9 3.1.7UserLogin表 .................. 9 3.1.8UserReview表 ................. 9 3.2后台管理页面详情 ................ 10 3.3前台页面详情 .................... 11 4.代码编写 ............................ 13 4.1创建的SqlHelper类 .............. 13 5.网站测试 ............................ 22 6.报告总结与收获 ...................... 25

1.需求分析

1.1网站功能分析:

新闻网站的功能包括后台新闻的录入,编辑,审核,新闻的发布,用户名的注册,最新消息显示在网页顶端等,网站会员的管理,系统管理员的管理等功能;前台的新闻浏览,会员的注册登录,以及对新闻的评论等功能.

4

xx中医药大学计算机科学与技术课程设计

1.2前台显示

前台的页面显示部分,一般有3页组成,及新闻主页.新闻栏目页和新闻内容页.新闻主页用于显示新闻列表,这样有利于浏览者选择感兴趣的新闻,新闻栏目页帮助浏览者查找某类新闻,内容页用于显示某个单条新闻.

1.2.1新闻主页

(1)显示所有新闻分类

(2)按新闻分类显示其下最新几条新闻 (3)显示最新的前几条新闻 (4)显示最热门的前几条新闻 (5)网站友情链接 (6)登录.注册链接 (7)后台管理链接

1.2.2新闻分类栏目页

(1)按新闻分类显示其下的所有新闻 (2)显示最新的前几条新闻 (3)显示最热门的前几条新闻

1.2.3新闻内容页

(1)显示新闻的详细内容

5

xx中医药大学计算机科学与技术课程设计

(2)显示该新闻的网友评论,设置为登录会员可以评论 (3)显示最新的前几条新闻

1.2.4会员注册/登录页

当浏览者想要了解更多的新闻或者参加评论时,他需要注册才能实现这些功能。读者在前台注册以后,管理员可以看到其信息,可以看是否符合要求,如不可以的话可以不同意。在登录的时候,需要正确的输入验证码才可以。

6

xx中医药大学计算机科学与技术课程设计

2.总体设计

2.1新闻网站的数据库设计

数据库新闻分类新闻表会员会员记会员评论管理员表 管理员级友情连接 2.2数据库操作的简化方案

(1) 配置web.config

表 登

7

xx中医药大学计算机科学与技术课程设计

2.3后台页面的设计

后台页面 后台主页模板后台登录页后台管理员的新闻页添加/ 8

2.4前台页面的设计

前台页面 前台新闻模板新闻首页新闻内容页新闻栏目页

xx中医药大学计算机科学与技术课程设计

3.详细设计

3.1数据库设计

3.1.1Admin表

3.1.2AdminGrader表

9

xx中医药大学计算机科学与技术课程设计

3.1.3FriendLink表

3.1.4News表

3.1.5Newcategroy表

10

xx中医药大学计算机科学与技术课程设计

3.1.6UserInfo表

3.1.7UserLogin表

3.1.8UserReview表

3.2后台管理页面详情

11

xx中医药大学计算机科学与技术课程设计

12

xx中医药大学计算机科学与技术课程设计

13

xx中医药大学计算机科学与技术课程设计

3.3前台页面详情

14

xx中医药大学计算机科学与技术课程设计

15

xx中医药大学计算机科学与技术课程设计

4.代码编写

4.1创建的SqlHelper类

public static int

GetExecuteNonQuery(string sqlStr, params SqlParameter[] values) {

OpenConnection(); cmd.CommandType = CommandType.Text;

cmd.CommandText = sqlStr;

cmd.Parameters.AddRange(values);//添加参

16

xx中医药大学计算机科学与技术课程设计

数集

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();//执行SQL语句 CloseConnection();

return result;//返回获得的单个值 }

public static object

GetExecuteScalar(string sqlStr, params SqlParameter[] values)

17

xx中医药大学计算机科学与技术课程设计

{

OpenConnection(); cmd.CommandType = CommandType.Text;

cmd.CommandText = sqlStr; cmd.Parameters.Clear();

cmd.Parameters.AddRange(values); object result = cmd.ExecuteScalar(); CloseConnection(); cmd.Parameters.Clear(); return result; }

public static SqlDataReader GetExecuteReader(string sqlStr) {

OpenConnection(); cmd.CommandType = CommandType.Text;

cmd.CommandText = sqlStr; SqlDataReader reader = cmd.ExecuteReader();

18

xx中医药大学计算机科学与技术课程设计

//这里不能关闭连接

CloseConnection(),要在调用中关闭 return reader; }

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(); return reader; }

public static DataSet GetDataSet(string sqlStr)

19

xx中医药大学计算机科学与技术课程设计

{

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 static DataSet GetDataSet(string sqlStr, params SqlParameter[] values) {

SqlDataAdapter da = new SqlDataAdapter();

OpenConnection(); cmd.CommandType = CommandType.Text;

20

xx中医药大学计算机科学与技术课程设计

cmd.CommandText = sqlStr; cmd.Parameters.AddRange(values); da.SelectCommand = cmd; DataSet ds = new DataSet(); da.Fill(ds); CloseConnection(); 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(ds, tableName);

21

xx中医药大学计算机科学与技术课程设计

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);//将数据适配器中的数据填充到数据集dt中

CloseConnection(); return dt; }

public static DataTable GetDataTable(string sqlStr, params

22

xx中医药大学计算机科学与技术课程设计

SqlParameter[] values) {

OpenConnection(); cmd.CommandType = CommandType.Text;

cmd.CommandText = sqlStr; cmd.Parameters.AddRange(values); DataSet ds = new DataSet(); SqlDataAdapter da = new SqlDataAdapter(cmd); da.Fill(ds); CloseConnection(); cmd.Parameters.Clear(); return ds.Tables[0]; }

public static DataView GetDataView(string sqlStr) {

SqlDataAdapter da = new SqlDataAdapter();

DataView dv = new DataView(); DataSet ds = new DataSet();

23

xx中医药大学计算机科学与技术课程设计

OpenConnection(); cmd.CommandType = CommandType.Text;

cmd.CommandText = sqlStr; da.SelectCommand = cmd; da.Fill(ds);

dv = ds.Tables[0].DefaultView; CloseConnection(); return dv; }

public static void GetAlert(string message, Page page) //显示对话框 {

page.ClientScript.RegisterStartupScript(page.GetType(), \"\",

\"\", false); }

public static void Alert(string message, Page page) //显示对话框

24

xx中医药大学计算机科学与技术课程设计

{

page.Response.Write(\"\"); }

public static void MsgBox(string message, Page page) //显示对话框 {

String csname = \"PopupScript\";//定义客户端脚本的名

Type cstype = page.GetType();//定义客户端脚本的类型

ClientScriptManager cs = page.ClientScript;//创建一个ClientScriptManager类 if

(!cs.IsStartupScriptRegistered(cstype, csname))//如果脚本没有注册 {

String cstext = \"alert('\" +

25

xx中医药大学计算机科学与技术课程设计

page.Server.HtmlEncode(message) + \"');\";

cs.RegisterStartupScript(cstype, csname, cstext, true); } }

public 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(message) +

26

xx中医药大学计算机科学与技术课程设计

\"');window.location='\" + url + \"';\";

cs.RegisterStartupScript(cstype, csname, cstext, true); } }

public void AlertBox(string message, string url) {

System.Web.HttpContext.Current.Response.Write(\"\"); }

public static void CClose(Page page) {

//Get a ClientScriptManager reference from the Page class ClientScriptManager cs = page.ClientScript;

//Define the name and Type of the

27

xx中医药大学计算机科学与技术课程设计

client script on the page String csname = \"close\"; Type cstype = page.GetType(); // builder the script text StringBuilder cstext = new StringBuilder();

cstext.Append(\"\"); //Check to see if the startup script is already registered if

(!cs.IsClientScriptBlockRegistered(cstype, csname)) {

cs.RegisterStartupScript(cstype, csname, cstext.ToString()); }

28

xx中医药大学计算机科学与技术课程设计

} //或int i =

SqlHelper.GetExecuteNonQuery(sqlStr); public static int

GetExecuteNonQuery(string sqlStr) {

OpenConnection();//打开连接 cmd.CommandType =

CommandType.Text;//定义为使用SQL语句 cmd.CommandText = sqlStr;//初始化Command对象的SQL字符串 int result =

cmd.ExecuteNonQuery();//执行SQL语句并返回受影响的行数

CloseConnection();//关闭连接 return result;//返回整数

} public static int

GetExecuteNonQuery(string sqlStr, params SqlParameter[] values) {

OpenConnection();

29

xx中医药大学计算机科学与技术课程设计

cmd.CommandType = CommandType.Text;

cmd.CommandText = sqlStr;

cmd.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 =

30

xx中医药大学计算机科学与技术课程设计

cmd.ExecuteScalar();//执行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.ExecuteScalar(); CloseConnection(); cmd.Parameters.Clear(); return result;

}

public static SqlDataReader GetExecuteReader(string sqlStr)

31

xx中医药大学计算机科学与技术课程设计

{

OpenConnection(); cmd.CommandType = CommandType.Text;

cmd.CommandText = sqlStr; SqlDataReader reader = cmd.ExecuteReader(); //这里不能关闭连接

CloseConnection(),要在调用中关闭 return reader; }

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();

32

xx中医药大学计算机科学与技术课程设计

//这里不能关闭连接

CloseConnection(),要在调用中关闭 cmd.Parameters.Clear(); 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 static DataSet GetDataSet(string sqlStr, params SqlParameter[] values)

33

xx中医药大学计算机科学与技术课程设计

{

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); CloseConnection(); cmd.Parameters.Clear(); return ds;//返回DataSet对象

}

public static DataSet GetDataSet(string sqlStr, string tableName) {

SqlDataAdapter da = new SqlDataAdapter();

OpenConnection(); cmd.CommandType =

34

xx中医药大学计算机科学与技术课程设计

CommandType.Text;

cmd.CommandText = sqlStr; da.SelectCommand = cmd; DataSet ds = new DataSet(); da.Fill(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);//将数据适配器中的数据填充到数据集dt中

35

xx中医药大学计算机科学与技术课程设计

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 SqlDataAdapter(cmd); da.Fill(ds); CloseConnection(); cmd.Parameters.Clear(); return ds.Tables[0];

}

public static DataView GetDataView(string sqlStr)

36

xx中医药大学计算机科学与技术课程设计

{

SqlDataAdapter da = new SqlDataAdapter();

DataView dv = new DataView(); DataSet ds = new DataSet(); OpenConnection(); cmd.CommandType = CommandType.Text;

cmd.CommandText = sqlStr; da.SelectCommand = cmd; da.Fill(ds);

dv = ds.Tables[0].DefaultView; CloseConnection(); return dv;

}

public static void GetAlert(string message, Page page) //显示对话框 {

page.ClientScript.RegisterStartupScript(page.GetType(), \"\",

\"\", false);

}

public static void Alert(string message, Page page) //显示对话框 {

page.Response.Write(\"\"); }

//调用方法:SqlHelper.Alert(\"您已经被禁止登录,请关闭本页后稍后再登录!\Page);

///

/// 警告窗口,服务器端弹出alert对话框,弹出对话框而不丢失背景 ///

/// 提示信息,例子:\"不能为空!\"

/// Page类 public static void MsgBox(string

38

xx中医药大学计算机科学与技术课程设计

message, Page page) //显示对话框 {

String csname = \"PopupScript\";//定义客户端脚本的名

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); }

}

public static void MsgBox(string message, string url, Page page)

39

xx中医药大学计算机科学与技术课程设计

{

ClientScriptManager cs = page.ClientScript;//创建一个ClientScriptManager类

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); }

}

public void AlertBox(string message, string url)

40

xx中医药大学计算机科学与技术课程设计

{

System.Web.HttpContext.Current.Response.Write(\"\");

}

public static void CClose(Page page) {

//Get a ClientScriptManager reference from the Page class ClientScriptManager cs = page.ClientScript;

//Define the name 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(\"\"); //Check to see if the startup script is already registered if

(!cs.IsClientScriptBlockRegistered(cstype, csname)) {

cs.RegisterStartupScript(cstype, csname, cstext.ToString()); }

} }

其他页面代码见news文件夹

5.网站测试

测试前台首页如下所示:

42

xx中医药大学计算机科学与技术课程设计

在IE浏览器测试前台效果如下

发布在iis之后前台网页界面均正常,效果如下:

43

xx中医药大学计算机科学与技术课程设计

问题总结:不同浏览器支持页面元素存在差异。 前台用户登录注册界面:

注册:

44

xx中医药大学计算机科学与技术课程设计

后台管理登录界面:

6.报告总结与收获

通过此次课程设计,我知道了自己还有很多东西没有学到,大学四年白白浪费了,学习是需要自制力的事情,没有任何人能够帮你。而且

45

xx中医药大学计算机科学与技术课程设计

开发动态网站需要有深厚的编程能力,掌握数据库和制作前端页面的能力,掌握数据绑定。同时,要熟练使用sql语句,对数据进行增删改查操作,同时掌握分页技术。在这次制作网站的过程中,我遇到了数据库与vs不能连接在一起的问题 ,如下所示:

在网上找资料查看和在同学的帮助下,我终于解决了这个问题,即感到很高兴,但也为自己的无知感到惭愧,制作这个网站的过程中,一

46

xx中医药大学计算机科学与技术课程设计

路跌跌撞撞,网站也弄得不是很全面,希望老师给予谅解,我今后也会更加努力学习,毕竟人生能有几回搏,今日不搏何时搏。

47

因篇幅问题不能全部显示,请点此查看更多更全内容

Top