牛腩新闻发布系统的视频看了将近半个月的时间,今天成功地把它发布了,哈哈。第一次看教学视频看得这么专注,都不带走思的,很不错。给小牛老师赞一个,嘿嘿!
言归正传,每学完一个阶段,最重要的就是总结,所以就允许我以倒序的形式,颗粒归仓吧!
参考博文:
win7下IIS的安装和配置
http://www.jb51.net/article/29787.htm
VS2010网站发布详解
http://wanghaitaoboke.blog.163.com/blog/static/1708725122012527716235/
处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”
http://blog.csdn.net/mazhaojuan/article/details/7660657
存储过程:
-- ============================================= -- Author: xuchenyang -- Create date: 2014-9-3 22:31:21 -- Description: 分页的存储过程 -- ============================================= Create PROCEDURE [dbo].[news_selectByPage] @startIndex int, @endIndex int AS BEGIN With temptbl as ( SELECT ROW_NUMBER() OVER (ORDER BY id desc)AS Row,* from news ) SELECT * FROM temptbl where Row between @startIndex and @endIndex END
DAL:
#region 选择分页记录 public DataTable SelectNewsByPage(string startIndex, string endIndex) { DataTable dt=new DataTable(); string cmdtext = "news_selectByPage"; SqlParameter[] paras = new SqlParameter[] { new SqlParameter("@startIndex",startIndex), new SqlParameter("@endIndex",endIndex)}; dt = sqlhelper.ExcuteQuery(cmdtext, paras, CommandType.StoredProcedure); return dt; } #endregion
BLL:
#region 分页选择记录 public DataTable SelectNewsByPage(string startIndex, string endIndex) { return ndao.SelectNewsByPage(startIndex,endIndex); } #endregion
Web:
打开admin/newsmanager.aspx:
工具箱空白处右击--“选择项”--浏览--找到已下载的AspNetPager.dll--拖到页面中
<div> <webdiyer:AspNetPager ID="anp" runat="server" onpagechanged="anp_PageChanged" PageSize="5" CssClass ="anp"> </webdiyer:AspNetPager> </div>
protected void Page_Load(object sender, EventArgs e) { //判断session里面是否存在管理员 if (Session["admin"] != null && Session["admin"].ToString() == "niunan") { //已登录 if (!Page.IsPostBack) { //设定分页控件总的记录条数(总的记录条数/每页的记录条数Pagesize=页数) anp.RecordCount = new NewsManager().SelectAll().Rows.Count; //绑定新闻 BindNews(); } } else { //未登录 Response.Redirect("login.aspx"); } } #region 绑定新闻列表 private void BindNews() { //根据当前页的起止记录的序号,从数据库中选出新闻,并绑定到控件上 repNews.DataSource = new NewsManager().SelectNewsByPage(anp.StartRecordIndex.ToString(), anp.EndRecordIndex.ToString()); repNews.DataBind(); } #endregion protected void anp_PageChanged(object sender, EventArgs e) { //Response.Write("开始记录数:" + anp.StartRecordIndex + "<br>结束记录数" + anp.EndRecordIndex); //当前页切换时,更新绑定的新闻 BindNews(); }
CSS样式:
.anp { padding-left:200px;}
效果图:
以上的内容很基础,但是重要的是不断积累,尝试和探索!