從頭做圖書館管理系統課設,表示層的構建及選購圖書頁面的前後端製作~(後端篇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,希望大家在答辯後能夠找到自己心儀的工作,謝謝

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