文件名称:
ASP.NET考研资讯网实验报告 含关键代码及注释、关键设置截图
开发工具:
文件大小: 4mb
下载次数: 0
上传时间: 2012-06-13
详细说明:
摘要: 文章中主要包括本网站的主要功能以及实现各项功能的关键代码,代码中关键语句的解释;为了实现某些功能遇到的问题及解决办法;调试中遇到问题的解决办法。 关键字: 考研资讯、经验共享、历年分数线查询、 引言: 正在准备考研的我,需要在各大考研网站上查询自己需要的资讯等,所以有了做“考研资讯网”的想法。游走于各大考研网站时,发现因为这些网站的盈利模式要求,他们的广告量很大,浮动窗口到处乱飞,页面通常不够干净整洁,信息量大但信息质量不高。考研资讯中也是广告掺杂多,真正有质量的文章少之又少。而我的考研资讯网的亮点就在于界面简单,易于操作,信息明了。在查询高校历年分数线时,很多网站给出的是整张表格,查阅起来极为不便,所以我在网站制作中进行了优化,使得成绩查询更加便捷更加明确。而在互动环节,我认为更多人需要的是经验总结,这样比泡在论坛节省时间、效率高,因此在我的网站中可以进行经验分享,如果有不良文章管理员可以及时发现和删除。 正文: 功能描述: 1. 注册功能:用户可以在register界面进行注册,注册时,如果用户名有重复,则会提示用户重新选择用户名;如果密码长度短强度弱,也会提示用户重新设置密码,增强用户的安全性;用户注册时的“电子邮件”信息可以帮助管 理员在日后与用户的互动。 2. 登陆功能:已注册的用户可以通过用户名和密码登陆到会员页面,进行一些会员特权操作,比如查询历年成绩和上传考研经验;管理员可以通过管理员的账号和密码进入管理员页面,对服务器中的文章进行管理,管理历年高校分数,以及上传最新考研资讯。 3. 注销功能:登陆的用户可以通过注销功能取消登陆;管理员可以通过注销功能进入到普通页面,对网站进行浏览。 4. 新闻列表功能:通过datalist控件实现对数据库中文章标题的显示,并在点击相应文章时跳转到“文章显示”页面。 5. 新闻翻页功能:因datalist控件没有分页功能,所以我通过PagedDataSource类实现了新闻列表的分页功能,使大量的新闻列表可以分页显示。 6. 新闻检索功能:检索含有关键字的新闻列表,使对新闻的查看更有针对性,更便捷的找到需要的文章。 7. 查询历年成绩功能:选择要查询的年份、学校后,dropdownlist可自动绑定该学校的相应专业作为选项,对专业进行选择后,可以进行历年成绩的准确查询;若需要对某一年份、某一学校、某一年份某一学校的所有成绩情况进行模糊查询,则可以在选择年份学校后点击相应按钮进行模糊查询,此时将返回要查询的多行数据信息,在gridview中进行分页显示。 8. 上传文章功能:普通会员可以分享上传自己的考研经验;管理员可以上传考研经验和考研资讯;两者都是在后台服务器中创建.txt文件,将前台网页中输入的文字写入.txt文件中,并在数据库中生成相应数据,以便能够及时在新闻列表中显示该文章。 9. 管理文章功能:管理员可以通过gridview对服务器中的文章及历年分数进行管理,可以更改已有文章的标题、地址等,也可对不良文章进行删除。 10. 添加新分数功能:管理员可以通过formview对数据库中历年高校分数数据进行添加操作 功能实现的关键代码: 【1】新闻列表功能、新闻列表分页功能及新闻检索功能的实现:通过datalist控件实现对数据库中文章标题的显示,并在点击相应文章时跳转到“文章显示”页面;通过PagedDataSource类实现新闻列表的分页功能,使大量的新闻列表可以分页显示。检索含有关键字的新闻列表,使对新闻的查看更有针对性,更便捷的找到需要的文章。 对新闻列表中的新闻标题进行url跟踪,连接到articleshow.aspx页面中进行新闻显示。 前台关键脚本: 后台cs文件中的代码: public static string Strs = "";//Strs是用来标记是否需要检索的,如果Strs不为空,就意味着传入了数据需要进行检索。 string txtConn = @"Data Source=GUJIBALA-PC\SQLEXPRESS;Initial Catalog=aspnetarticle;Integrated Security=True;";//连接数据库的语句 protected void Page_Init(object sender, EventArgs e) { BandDatas(Strs, 0); } private void BandDatas(string Strs, int Selects) //Strs是标记是否检索的,Selects是标记从当前页开始显示 还是从首页开始显示 { SqlConnection conn = new SqlConnection(txtConn); conn.Open(); SqlCommand cmd = conn.CreateCommand(); string StrTemp = ""; if (Strs == "")//当不需要检索时,sql语句如下 StrTemp = "select [name],num from aradd where [type]='1' order by uptime desc"; //因为“name”和“type”为数据库中的关键字,所以需要加“[]”才可以使语义正常 //按照上传时间,倒序显示,越新的文章显示的越靠前 else //当需要检索时,sql语句如下 StrTemp = "select [name],num from aradd where [type]='1' and [name] like '%" + Strs + "%' order by uptime desc"; SqlDataAdapter sda = new SqlDataAdapter(StrTemp, conn); DataSet ds = new DataSet(); sda.Fill(ds, "aradd"); PagedDataSource pages = new PagedDataSource(); pages.DataSource = ds.Tables["aradd"].DefaultView; //将数据库中提取的数据信息作为PageDataSource类定义的局部变量pages的数据源,由pages对该数据源进行分页 pages.AllowPaging = true;//设置pages启用分页功能 pages.PageSize = 10;//设置pages每页显示10条数据 int currpage = 0;//用currpage标记“显示哪一页” if (Selects == 0)//Selects标记为“0”时可以使页面从当前页继续显示,即,将当前页的页码值赋给currpage { if (Request.QueryString["page"] != null) currpage = Convert.ToInt32(Request.QueryString["page"]); else currpage = 1; } else if (Selects == 1) //Selects标记为“1”时页面从pages的首页开始显示。比如在某一页面进行检索操作时,会自动回归到检索出数据后的新pages的首页开始显示 { currpage = 1; } pages.CurrentPageIndex = currpage - 1;//将当前页的值赋给pages,使其显示当前该显示的页面 lblCurrentPage.Text = currpage.ToString();//lblCurrentPage是页面下方的标记Lable,用来提示用户当前页码的 lblPageCount.Text = pages.PageCount.ToString();//lblPageCount是页面下方的标记Lable,提示用户共有多少页 if (!pages.IsFirstPage) up.NavigateUrl = Request.CurrentExecutionFilePath + "?page=" + Convert.ToString(currpage - 1); //如果不是第一页,hyperlink控件up(进行“上一页”操作的控件)就连接到pages数据中的“上一页” if (!pages.IsLastPage) down.NavigateUrl = Request.CurrentExecutionFilePath + "?page=" + Convert.ToString(currpage + 1); //如果不是最后页,hyperlink控件down(进行“下一页”操作的控件)就连接到pages数据中的“下一页” this.DataList1.DataSource = pages;//将pages作为datalist的数据源 this.DataList1.DataBind();//对datalist控件进行绑定 conn.Close(); } ……………………略 详见文档中 ...展开收缩
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.