牛腩新闻发布系统总结——网站发布和分页制作

       牛腩新闻发布系统的视频看了将近半个月的时间,今天成功地把它发布了,哈哈。第一次看教学视频看得这么专注,都不带走思的,很不错。给小牛老师赞一个,嘿嘿!

       言归正传,每学完一个阶段,最重要的就是总结,所以就允许我以倒序的形式,颗粒归仓吧!

  • 牛腩新闻发布系统的发布

        参考博文:

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

       效果图:

      

       以上的内容很基础,但是重要的是不断积累,尝试和探索!

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。