版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGEPAGE21毕业设计说明书(计算机与软件学院)设计课题:中小型局域网的安全和配置专业班级:网络0903学生姓名:学生学号:指导教师:目录第一章系统简介 51.1设计目的 51.2具体内容 51.3定义解说 6第二章数据库设计 62.1表结构设计 62.2:视图 23视图BidBulletinView 23视图BidResponseView 23视图BidsView 24视图EnterpriseCommunicationReplyView 25视图EnterpriseCommunicationView 26视图EnterpriseCooperationReplyView 27视图EnterpriseCommunicationView 27视图EnterpriseCooperationReplyView 28视图EnterpriseCooperationView 29视图EnterpriseView 30视图EventView 30视图ExpertCommentView 31视图ExpertView 32视图NewsView 33视图PublicationView 33视图RFPReplyView 34视图RFPView 35视图SysUser 35概述 35视图UserTeamView 36概述 36第三章系统设计 373.1:图表组成 373.2:类视图 393.3:页面导航和功能描述 413.3.1:功能列表 41第四章代码设计模块 434.1配置数据库信息 434.2数据访问 444.3登录模块 474.4新用户注册 494.5企业操作模块 514.6标书模块 544.7专家操作模块 574.8新闻列表模块 694.9公告模块 724.10关于我们模块 764.11事件模块 76参考文献 80
[摘要]Expertfinder是一个用于信息咨询门户网站。当企业在他们的业务运行时遇到问题,它们可以在门户网站上公布其需求或问题,并寻找一些专家来解决这些问题。与此同时,专家们还可以利用门户网站给企业提供服务和技术支持,以便帮助他们作出正确的决定,以及加速它们的发展。[关键字]系统用例数据库分析实现部分系统简介1.1设计目的Expertfinder是一个用于信息咨询门户网站,培训和商业服务。当企业在他们的业务运行时遇到问题,它们可以在门户网站上公布其需求或问题,并寻找一些专家来解决这些问题。与此同时,专家们还可以利用门户网站给企业提供服务和技术支持,以便帮助他们作出正确的决定,以及加速它们的发展。另外,专家还可以建立虚拟团队,匿名用户可以浏览EBW主页和一些免费资源,并可以注册成为EBW中的各种成员。由于EP的另一个子系统EC,设计EBW时,我们必须遵从ES的外部接口,将EBW和EC合成为一个完整的门户系统。1.2具体内容系统的详细设计编码,系统测试系统代码,包括样本数据静态数据资料库在线帮助文件用户指南1.3定义解说DefinitionDescriptionEBWExpertFinderBusinessWebsiteECEnterpriseCommunityEPExpertFinderPortalIEMicrosoftInternetExplorer第二章数据库设计图1ER图数据库模型如REF_Ref210031709\r\h图1所示,图中详细信息参见数据库设计文档“数据库模型.vsd”。2.1表结构设计表Bid定义如下:名称类型可否为空说明备注BidIDint4否招标序号自动生成Titlenvarchar(100)否标题IndustryIDint4否类型IDContactnvarchar(50)否连系人姓名主键表Bid的主键是BidID字段,类型为int,设置自动增量。外键表Bid的外键为IndustryID,类型为int,用于与表Industry的IndustryID相关联。约束无其他约束索引表BidBulletin定义如下:名称类型可否为空说明备注BulletinIDint4否序号自动生成BidIDInt4否招标序号PostTimedatetime否时间Titlenvarchar(100)否标题Detailsnvarchar(MAX)否详细信息主键表BidBulletin的主键是BidBulletinID字段,类型为int,设置自动增量。外键表BidBulletin的外键为BidID,类型为int,用于与表Bid的BidID相关联。约束无其他约束索引表BidResponse定义如下:名称类型可否为空说明备注ResponseIDint4否招标序号自动生成BidIDInt4否招标IDBidderIDint4否类型IDResponseContentnvarchar(50)否连系人姓名ResponseTimedatetime否回复时间主键表BidResponse的主键是ResponseID字段,类型为int,设置自动增量。外键表BidResponse的外键为:BidID,类型为int,用于与表Bid的BidID相关联。BidderID,类型为int,用于与表User的UserID相关联。约束无其他约束索引表Comments定义如下:名称类型可否为空说明备注CommentIDint4否评论序号自动生成Detailsnvarchar(MAX)否详细信息PosterIDint4否类型IDPostTimedatetime否连系人姓名PostNameNvarchar(120)是发表者姓名主键表Comments的主键是CommentID字段,类型为int,设置自动增量。第三章系统设计3.1:图表组成用例图系统包图系统组件图3.2:类视图组件图如REF_Ref210180885\r\h图4所示:系统类图详细类图,请参见详细文档《ExpertFinder详细设计.vsd》。3.3:页面导航和功能描述系统导航图如REF_Ref210180868\r\h图6所示:导航图3.3.1:功能列表UseadiagramtodescribethepagesnavigationPageFunctionDescriptionRegister.aspxDataRepository.UserProvider.GetAll()从数据库中获取UserProvide表的全部记录。Register.aspxus.Count()获取UserProvider全部记录之后得到对应的数据行数。Register.aspxResponse.Redirect(stringurl)跳转到指定页面。Auditusers.aspxDataRepository.UserProvider.GetByUserId(intUserID)根据指定的UserID返回UserProvider对应的记录Auditusers.aspxDataRepository.UserProvider.Update(Userentity);更新指定的User表Auditusers.aspxDataRepository.UserProvider.GetAll()返回UserProvider表中所有数据RFPList.aspxDataRepository.RfpViewProvider.GetAll()从.RfpView视图中返回所有数据RFPList.aspxExpertFinder.BLL.NoRecordGridView.BindNoRecordGridView(GridViewGridView1)动态的根据列的多少来创建一个有标题的空GridView。RFPList.aspxDataRepository.RfpViewProvider.GetAll()返回RfpView视图中所有数据RFPList.aspxDataRepository.RfpProvider.GetByRfpid(intrfpid)根据指定的rfpId从RfpProvider中返回指定的数据RFPList.aspxDataRepository.RfpCategoryProvider.GetByCategoryId(intCategoryId)根据指定的CategoryId从RfpCategory表中返回指定的数据RFPList.aspxDataRepository.ExpertProvider.GetByUserId(intUserID)根据指定的UserID从Expert表中返回指定的数据RFPList.aspxRepRFPReplyInfoBind(ButtonVirtuakGroup,ButtonRepRFPReply,DataListRepRFPReplyInfo)根据传入的控件的对象,给控件赋值,从而达到传值的目的。并且根据用户的UserID判断是否有权组建虚拟团队还是只能发表评论。RFPList.aspxReplyRfpSav(TestBoxDetails)将数据保存到ExpertFinder.BLL.ReplyRfpBLL表中RFPList.aspxPanelVisible(DataListRepRFPReplyInfo,TextBoxRepDetails,ButtonRepRFPReply,ButtonReplyRFPSubmit)通过传入的页面控件对象,判断显隐藏。RFPList.aspxDataRepository.ReplyRfpProvider.GetByRfpid(intRfpid)根据Rfpid从ReplyRfp表中返回指定的数据。RFPList.aspxDataRepository.ExpertProvider.GetByUserId(intUserId)根据Rfpid从Expert表中返回指定的数据。RFPList.aspxFindRFP(VList<RfpReplyView>rfpReplyViews,RfpR,eplyView,rfpReplyView遍历VList<RfpReplyView>)Login.aspx1DataRepository.UserProvider.GetAll()获取所有的用户信息EditNews.aspx1.DataRepository.NewsProvider.GetByNewsId(NewsID)根据NewsID得到一个News对象2.DataRepository.NewsProvider.Save(TNews)发表新闻NewsList.aspx1.DataRepository.NewsViewProvider.GetAll()获得所有的News信息,ExpertFinder.BLL.NoRecordGridView.BindNoRecordGridView(this.GridView1)动态的根据列的多少来创建一个有标题的空GridView2.vcommbrief.ChangeResult(GridView1,ds,"Title",0,10)对GridView制定列所显示的数据进行格式化ViewNews.aspx3.DataRepository.NewsProvider.GetByNewsId(NewsID)根据NewsID得到一个News对象,Top.aspxDataRepository.EventsProvider.GetTopEvents(5)获取事件的前5名DataRepository.PublicationProvider.GetTopPublication(5)获取出版物的前5名DataRepository.ExpertViewProvider.GetTopExpertView(5)显示被评论数最多的5位专家DataRepository.CommentsProvider.GetTopComments(0,5)获取网站评论的前5名ControlEventsGridView(DataSetds,GridViewGv,stringColName)对指定DataSet里指定列的数据进行格式化ExpertInformation.aspxDataRepository.ExpertProvider.GetByUserId(Convert.ToInt32(Session["UserID"]))通过UserID获取对应的专家基本信息ExpertFinder.BLL.EditExpert.EditTheExpert(Convert.ToInt32(Session["UserID"]),Edit)通过UserID把Edit数组里的数据更新到Expert表中NewTopic.aspxExpertFinder.BLL.EnterpriseCommunity.AddEnterpriseCooperation(Ecoo)新增企业间合作信息ExpertFinder.BLL.EnterpriseCommunity.AddEnterpriseComment(Ecomment);新增企业间交流信息TopicDisplay.aspxDataRepository.EnterpriseCooperationProvider.GetByCooperationId(Convert.ToInt32(Request.QueryString["PID"]))通过CooperationID获取EnterpriseCooperation表中对应的信息DataRepository.EnterpriseCommentProvider.GetByCommentId(Convert.ToInt32(Request.QueryString["PID"]))通过CommentID获得EnterpriseComment的对应信息DataRepository.EnterpriseCooperationReplyViewProvider.GetEnterpriseCooperationReplyViewByCooperationID(Convert.ToInt32(Request.QueryString["PID"]));通过CooperationID获取对应的回复信息DataRepository.EnterpriceCommunicationReplyViewProvider.GetEnterpriceCommunicationReplyViewByCommentID(Convert.ToInt32(Request.QueryString["PID"]));通过CommentID获取EnterpriseCommunication对应的回复信息Topiclist.aspx1DataRepository.EnterpriseCommunicationViewProvider.GetAll()获取EnterpriseCommunication的全部数据2.DataRepository.EnterpriseCommunicationViewProvider.GetAll()获取EnterpriseCommunication的全部数据代码设计模块4.1配置数据库信息本程序提取数据库连接字符串存放在web.config文件中,主要代码信息如下:<connectionStrings><addname="ConnectionString"connectionString="DataSource=.;InitialCatalog=E:\欧美软件外包\EXPERTFINDER\APP_DATA\EXPERTFINDER.MDF;IntegratedSecurity=True"providerName="System.Data.SqlClient"/></connectionStrings>4.2数据访问程序在运行时候,最终会将请求发送给服务器,如果有数据的交互,那么服务器会去访问数据,而这些数据是根据用户需要的数据进行的访问。其中包括:数据连接,查询语句,读取语句,返回单值,定义命令对象,利用存储过程返回DataSet,详细代码模块如下:数据库连接:publicstaticSqlConnectionmySqlconnection(){SqlConnectionMyCon=newSqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ToString());MyCon.Open();returnMyCon;}说明:给出提取配置文件的数据字符串,提供一个静态函数,返回SqlConnection连接对象。查询语句:publicDataSetQuery(stringSqlString){try{SqlDataAdapterda=newSqlDataAdapter();da.SelectCommand=newSqlCommand(SqlString,con);DataSetds=newDataSet();da.Fill(ds);returnds;}catch(System.Data.SqlClient.SqlExceptionex){thrownewException(ex.Message);}}说明:此方法主要是返回一个DataSet,但需要提供参数,该参数是查询语句,代码嵌套Try和Catch语句,如果程序出错,不至于会影响到整个代码部分。读取语句:publicSqlDataReaderGetDataReader(stringSqlString){try{SqlCommandcmd=newSqlCommand(SqlString,con);SqlDataReaderdr=cmd.ExecuteReader();returndr;}catch(System.Data.SqlClient.SqlExceptionex){thrownewException(ex.Message);}}说明:该方法最主要是返回SqlDataReader类型,其中提供参数Sqlstring类型的变量,该变量也是一些主要的SQL语句。返回单值:publicintExecuteSQL(stringSqlString){try{SqlCommandcmd=newSqlCommand(SqlString,con);inti=Convert.ToInt32(cmd.ExecuteScalar());returni;}catch(System.Data.SqlClient.SqlExceptionex){thrownewException(ex.Message);}}说明:此方法主要是返回一个int类型的值,最主要还是用于判断查询结果是否为空。包括一个参数SqlString,它也是用来提供SQL语句的。执行操作:publicvoidGetExecute(stringSqlString){try{SqlCommandcmd=newSqlCommand(SqlString,con);cmd.ExecuteNonQuery();}catch(System.Data.SqlClient.SqlExceptionex){thrownewException(ex.Message);}}说明:此代码块也是用来执行根据用户需要的数据。定义命令对象:privatestaticSqlCommandBuildQueryCommand(SqlConnectionconnection,stringstoredProcName,IDataParameter[]parameters){SqlCommandcommand=newSqlCommand(storedProcName,connection);command.CommandType=CommandType.StoredProcedure;foreach(SqlParameterparameterinparameters){if(parameter!=null){//检查未分配值的输出参数,将其分配以DBNull.Value.if((parameter.Direction==ParameterDirection.InputOutput||parameter.Direction==ParameterDirection.Input)&&(parameter.Value==null)){parameter.Value=DBNull.Value;}command.Parameters.Add(parameter);}}returncommand;}说明:主要返回Sqlcommand类型的数据,提供参数有Sqlconnection连接对象,存储过程和参数数组。利用存储过程返回DataSet:publicstaticDataSetRunProcedure(stringstoredProcName,IDataParameter[]parameters,stringtableName){using(SqlConnectionconnection=newSqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ToString())){DataSetdataSet=newDataSet();connection.Open();SqlDataAdaptersqlDA=newSqlDataAdapter();sqlDA.SelectCommand=BuildQueryCommand(connection,storedProcName,parameters);sqlDA.Fill(dataSet,tableName);connection.Close();returndataSet;}}说明:执行返回DataSet,提供参数存储过程,参数数组,和表名。4.3登录模块登录界面如下:它包括在主页面内具体代码如下:LoginButton_Click事件下Common.LoginName1=this.txtUser.Text;Common.CheckType();//检查UserType和IsAdutingCommon.LoginCheck();//登录检查if(this.txtPwd.Text.Equals(Common.Password1)){intuserid=Common.GetUserID(this.txtUser.Text);stringuserType=null;intIsAuditing;userType=Common.UserType1;IsAuditing=Common.IsAuditing1;if(Page.IsValid){this.btnLogOut.Visible=true;this.Label3.Visible=false;this.Label2.Visible=false;this.txtUser.Visible=false;this.txtPwd.Visible=false;this.LoginButton.Visible=false;this.HyperLink1.Visible=false;if(userType.Equals("Admin")&&IsAuditing.Equals(2)){this.Label1.Text="Welcome"+Common.LoginName1;this.Left1_1.Visible=true;Session["UserType"]="admin";}if(userType.Equals("Expert")&&IsAuditing.Equals(2)){this.Label1.Text="Welcome"+Common.LoginName1;this.Left2_1.Visible=true;DbDatadb=newDbData();SqlDataReaderdr=db.GetDataReader("selectExpertID,FullNamefromExpertwhereUserID="+userid);while
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 银行贷款委托代理合同(2篇)
- 巴西课件 湘教版
- 人教版南辕北辙课件
- 苏教版江苏省扬州市扬州中学教育集团树人学校2023-2024学年高一上学期期中数学试题
- 老舍《茶馆》课件
- 外科护理课件
- 基层教育 课件
- 西京学院《中华才艺》2023-2024学年第一学期期末试卷
- 西京学院《外国文学》2021-2022学年第一学期期末试卷
- 西华师范大学《中外电影史》2021-2022学年期末试卷
- 《国歌法》、《国旗法》主题班会
- 疼痛评估:准确评估病人疼痛的方法
- 桥式起重机安全操作培训
- 建筑施工规范大全
- 幼儿园好习惯好性格养成绘本:排队喽
- 食品安全自查、从业人员健康管理、进货查验记录、食品安全事故处置保证食品安全的规章制度
- 抗高血压药物-课件
- 英语四级单词4500
- 神经病学课件:癫痫
- 县人民医院药事管理与药物治疗学委员会会议纪要五篇
- 酒店预订确认函
评论
0/150
提交评论