从头做图书馆管理系统课设,表示层的构建及选购图书页面的前后端制作~(后端篇2)

链接 

  1. 从头做一个基于B/S的 ASP.NET图书馆管理系统课设,持续更新~(开篇)
  2. 从头做图书馆管理系统课设,css3轮播图,导航栏,持续更新~(前端篇1)
  3. 从头做图书馆管理系统课设,登陆布局+登陆框毛玻璃效果,持续更新~(前端篇2)
  4. 从头做图书馆管理系统课设,开发思想+Asp.NET 三层架构~(后端篇1)

写在前面:

    实现效果(丑是丑了点!!但是功能都是可以实现的,因为没用前端框架理解一下):

   主要实现了对图书书名的搜索和种类检索以及排序功能 

主要步骤:

  • 页面制作
  • 新建窗体
  • 选择母版页
  • 将提前制作好的页面放入页面
  • 利用控件实现功能

页面制作就不详细展示了,首先新建一个窗体,选择之前制作好的母版页,将前端代码放入窗体

实现功能

1.使用datalist控件

  • 在前端设计视图,打开工具箱,拖入datalist控件

  • 在源视图找到datalist控件的标记嵌入代码块

   <ItemTemplate>
                    <div class="bookItem">
                        <div class="imgContent">
                            <a href="bookdetail.aspx?bookId=<%# DataBinder.Eval(Container.DataItem, "ID") %>"> <img src="img/book.jpg"> </a>
                        </div>
                        
                        <div class="textContent">
                            <span><%# DataBinder.Eval(Container.DataItem, "name") %></span><br />
                            <span>作者:<%# DataBinder.Eval(Container.DataItem, "writer") %></span><br />
                            <span>价格:<%# DataBinder.Eval(Container.DataItem, "money") %></span><br />
                            <span>销量:<%# DataBinder.Eval(Container.DataItem, "sales") %></span><br />
                            <span>库存:<%# DataBinder.Eval(Container.DataItem, "count") %></span><br />
                            <span>上架时间:<%# DataBinder.Eval(Container.DataItem, "time") %></span><br />
                           
                        </div>
                       
                    </div>
                </ItemTemplate>

放入分页代码

   <div class="page">
                共【<asp:Label ID="lblSumPage" runat="server"></asp:Label>】页 &nbsp; &nbsp; &nbsp;
                        当前第【<asp:Label ID="lblCurrentPage" runat="server"></asp:Label>】页&nbsp;
                        <asp:HyperLink ID="hyfirst" runat="server">首页</asp:HyperLink>
                &nbsp; &nbsp; &nbsp;<asp:HyperLink ID="lnkPrev" runat="server">上一页</asp:HyperLink>
                &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
                        <asp:HyperLink ID="lnkNext" runat="server">下一页</asp:HyperLink>
                &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;
                        <asp:HyperLink ID="hylastpage" runat="server">尾页</asp:HyperLink>
            </div>

 

  • 在后台进行数据绑定和分页:

按f7进入后台,调用如下

 protected void Page_Load(object sender, EventArgs e)
    {
        BindDataList1(null,null,null,null,null);
    }

    /// <summary>
    /// 获取图书信息绑定datalist并分页
    /// </summary>
    /// <param name="type">获取图书的种类</param>
    /// <param name="orderby">按什么排序</param>
    /// <param name="order">正序倒叙</param>
    /// <param name="num">获取的数量</param>
    /// <returns></returns>
    protected void BindDataList1(string name,string type, string orderby, string order, string num)
    {
        BookBLL bookBLL = new BookBLL();
        PagedDataSource objPage = new PagedDataSource();
        objPage.DataSource = bookBLL.GetAllBookByDs(name,type,orderby,order,num).Tables[0].DefaultView;
        objPage.AllowPaging = true;
        objPage.PageSize = 8;
        int CurPage;
        if (Request.QueryString["Page"] != null)
            CurPage = Convert.ToInt32(Request.QueryString["Page"]);
        else
            CurPage = 1;
        objPage.CurrentPageIndex = CurPage - 1;
        lblCurrentPage.Text = CurPage.ToString();
        lblSumPage.Text = objPage.PageCount.ToString();
        if (!objPage.IsFirstPage)
        {
            this.hyfirst.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + 1;
            lnkPrev.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage - 1);
        }
        if (!objPage.IsLastPage)
        {
            hylastpage.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + objPage.PageCount;

            lnkNext.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage + 1);
        }
        this.DataList1.DataSource = objPage;
        this.DataList1.DataBind();
    }

总结:

            到这里基本上整个课设制作的流程就已经完全写清楚了,剩下的就是一下细节功能的实现,这一定不会难道所有的大神们的,在毕设答辩结束后,我将把所有源码发出来。也可以回复留言,直接让我写关于哪一块的文章。不写不知道,本来这个网站开发就用了几天时间结果写博客写了很久,本来会的东西用文字成体系的表述出来真的有点难度,5篇文章半个月有700+的访问量感谢大家的支持,如果有人提问我一定知无不言

            如果大家对课设毕设中有任何问题可以留言加好友后我们慢慢探讨,当然不收费噢 哈哈O(∩_∩)Oz,希望大家在答辩后能够找到自己心仪的工作,谢谢

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章