您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > 广东海洋大学.NET开发技术课程设计-论坛
《.NET开发技术》课程论文BBS论坛姓名__________班级___学号___评语:成绩________BBS论坛一.数据库设计BBS论坛是用户交流的主要场所,有利于用户发布信息和回复信息。为了提高论坛的回复内容的显示速度,本例将所有帖子内容保存在XML文件中,数据库中则保存帖子的标题,发帖时间,回复次数等。1、数据库的逻辑设计本例需要设计两个表:论坛主题类别表和帖子信息表,设计内容如下:表一:表示论坛主题的类别信息BBSCategory表结构字段名称字段类型说明CategoryIDint类别唯一标识,自增长字段(PK)CategoryNameNvarchar(50)类别名称CategoryDesNvarchar(100)类别描述表二:表示论坛帖子的详细信息BBSInfo表结构字段名称字段类型说明InfoIDint主题唯一标识,子增长类型(PK)TitleNvarchar(50)帖子主题FileNameNvarchar(100)帖子文件所在的位置PostTimedatetime发帖时间ReplyCountint回复次数LastReplytimedatetime最后回复时间PostUserNvarchar(50)发帖人CategoryIDint主题所在的类别ID(FK)2、数据表关系分类表和主题信息表的关系3、数据连接语句connectionStringsremovename=LocalSqlServer/addname=LocalSqlServerconnectionString=DataSource=.;InitialCatalog=BBS;IntegratedSecurity=TrueproviderName=System.Data.SqlClient//connectionStrings二.网站配置Web.config的配置内容如下所示:configurationconnectionStringsremovename=LocalSqlServer/addname=LocalSqlServerconnectionString=DataSource=.;InitialCatalog=BBS;IntegratedSecurity=TrueproviderName=System.Data.SqlClient/addname=BBSConnectionStringconnectionString=DataSource=.;InitialCatalog=BBS;IntegratedSecurity=TrueproviderName=System.Data.SqlClient/addname=BBSConnectionString2connectionString=DataSource=.;InitialCatalog=BBS;IntegratedSecurity=TrueproviderName=System.Data.SqlClient//connectionStringssystem.webcompilationdebug=falsetargetFramework=4.0//system.web/configuration三.模块设计1、公共访问类:从三层架构的角度,分析各公共类。本例主要包含两个类,一个是数据库访问类“SqlHelper.cs”,一个BBS论坛管理类“BBSManager.cs”,其中BBSManager包含的功能如下所示:①添加论坛类别publicboolAddBBSCategory(stringname,stringdes)②将发帖内容保存到XML文件中publicvoidAddXML(stringfilename,stringtitle,stringcontent,stringuser)③添加一条记录到表bbsinfo中publicvoidAddMsg(stringtitle,stringuser,intcategoryid)④创建或获取缓存参数的私有方法privatestaticSqlParameter[]GetParameters()⑤更新数据库中的回复时间publicboolUpdateMsg(intinfoid)⑥给新建的xml文件起名privateintgetFilename()⑦更新回复内容publicvoidUpdateXml(stringfilename,stringtitle,stringcontent,stringuser)2、功能模块的详细设计:说明各功能模块实现的功能,采用的重点技术及主要代码。①论坛类别主页面②论坛类别添加页面主要实现的代码:protectedvoidButton1_Click(objectsender,EventArgse){BBSManagermybbs=newBBSManager();boolresult=mybbs.AddBBSCategory(TextBox1.Text,TextBox2.Text);if(result)Literal1.Text=论坛类别添加成功!请刷新!;}③论坛类别修改删除页面主要实现的代码:DeleteCommand=DELETEFROM[BBSCategory]WHERE[CategoryID]=@CategoryIDInsertCommand=INSERTINTO[BBSCategory]([CategoryName],[CategoryDes])VALUES(@CategoryName,@CategoryDes)SelectCommand=SELECT*FROM[BBSCategory]UpdateCommand=UPDATE[BBSCategory]SET[CategoryName]=@CategoryName,[CategoryDes]=@CategoryDesWHERE[CategoryID]=@CategoryID④帖子列表显示页面⑤论坛发帖页面主要实现的代码:protectedvoidButton1_Click(objectsender,EventArgse){BBSManagermybbs=newBBSManager();stringusername=HttpContext.Current.User.Identity.Name;mybbs.AddMsg(TextBox1.Text,username,int.Parse(Request.QueryString[categoryid]));mybbs.AddXML(Server.MapPath(.)+@\content.xml,TextBox1.Text,TextBox2.Text,username);Literal1.Text=帖子发布成功!;}⑥帖子详细内容⑦论坛回帖页面主要实现的代码:protectedvoidButton1_Click(objectsender,EventArgse){BBSManagermybbs=newBBSManager();stringfilename=Server.MapPath(.)+@\+Request.QueryString[infoid]+file.xml;mybbs.UpdateXml(filename,TextBox1.Text,TextBox2.Text,HttpContext.Current.User.Identity.Name);mybbs.UpdateMsg(int.Parse(Request.QueryString[infoid]));Literal1.Text=更新成功!;Response.Redirect(contentlist.aspx?filename=+Request.QueryString[infoid]);}3、模块之间的调用关系,参数传递的关键代码。帖子列表展示发帖帖子内容展示回复从XML中读取信息保存帖子内容到XML论坛的帖子功能实现流程参数传递的关键代码:①发帖时获取前台选择时传递来的CategoryID值ahref=/BBS/MsgList.aspx?categoryid=%#Eval(categoryid)%style=text-decoration:none%#Eval(categoryname)%/aprotectedvoidButton1_Click(objectsender,EventArgse){stringstr=Request.QueryString[categoryid];Response.Redirect(/BBS/sendMsg.aspx?categoryid=+str);}②选择具体一个帖子时,获取帖子的文件名protectedvoidGridView1_SelectedIndexChanged(objectsender,EventArgse){GridViewRowrow=GridView1.SelectedRow;Response.Redirect(ContentList.aspx?filename=+row.Cells[7].Text);}protectedvoidPage_Load(objectsender,EventArgse){XmlDataSource1.DataFile=Request.QueryString[filename]+file.xml;}③回帖时,获取当前帖子的InfoID值asp:ButtonID=Button1runat=serveronclick=Button1_ClickText=回复主题/protectedvoidButton1_Click(objectsender,EventArgse){Response.Redirect(/BBS/BackMsg.aspx?infoid=+Request.QueryString[filename]);}四.小结经过两个星期的不懈努力,《.NET开发技术》课程设计终于落幕。我这次的课程设计的题目是《BBS论坛》,在整个设计过程中,自己从刚开始什么都都不懂,到后来上网找相关资料自学,期间遇到的问题、错误多不甚数,然经过无数次的调试分析,最终一一得以圆满解决。在这一个星期里,自己可谓是感慨万分。的确,从理论到实践,在整整一个星期的日子里,可以说得是苦多于甜,但是自己却能够在这短短的一个星期里学到很多很多的的东西,不仅可以巩固了以前所学过的知识,加深了对课本知识点的理解。而且学到了很多在书本上所没有学到过的知识,能够说是收获颇丰。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,从实践中验证理论,从而提高自己的实际动手能力和独立思考的能力。当然,在设计的过程中遇到许许多多的问题,可以说得是困难重重,毕竟这是一次课程设计,需要掌握的知识面比较广,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计之后,一定把以前所学过的知识重新温故。在设计中,VS2010使用的也更加的牢固,了解的也更加深刻。这次课程设计已经结束了,对于我自己,对本次课程设计我的感受很深,在这个过程中,我也曾经因为实践经验的缺乏失落过,也为毫无头绪而烦恼,也曾经为调试的成功实现而手舞足蹈。呵呵,让自己在本次课程设计中感受了一番大起大落,使自己从中明白了,做成功一件事,是需要付出和汗水的。天下无难事只怕有心人,只要自己坚定信念,成功也只在咫尺之间。当然,我们也不能满足于现有的水准,否则就会停滞不前,要知道学海无涯,仍需我们努力学习。所以,在以后的时间里,我会利用更多时间去上机实验,加强自学的能力,多编写程序,相信不久后我的编程能力会有所提高能设计出更多的更有创新的作品!
本文标题:广东海洋大学.NET开发技术课程设计-论坛
链接地址:https://www.777doc.com/doc-5086330 .html