官术网_书友最值得收藏!

3.8 留言簿模塊設(shè)計(jì)

3.8.1 留言簿模塊概述

本企業(yè)門戶網(wǎng)站中加入了留言簿模塊,以方便與用戶進(jìn)行溝通。作為企業(yè)門戶網(wǎng)站的留言簿,通常情況下只有留言、查看留言和回復(fù)留言的功能,但對(duì)于注冊(cè)用戶,登錄之后還可以刪除對(duì)其留言進(jìn)行的回復(fù)。留言頁面運(yùn)行結(jié)果如圖3.19所示。

留言詳細(xì)信息及回復(fù)頁面運(yùn)行結(jié)果如圖3.20所示。

圖3.19 留言頁面

圖3.20 留言詳細(xì)信息及回復(fù)頁面

3.8.2 留言簿模塊技術(shù)分析

實(shí)現(xiàn)留言簿模塊時(shí),主要用到了第三方組件FreeTextBox,該組件是一個(gè)在線文本編輯器,可以對(duì)文字及圖片內(nèi)容進(jìn)行處理,并將數(shù)據(jù)保存到數(shù)據(jù)庫中。FreeTextBox組件的配置步驟如下:

(1)將FreeTextBox.dll添加到項(xiàng)目中

在“解決方案資源管理器”中用鼠標(biāo)右鍵單擊項(xiàng)目,在彈出的快捷菜單中選擇“添加引用”命令,在彈出的對(duì)話框中選擇“瀏覽”選項(xiàng)卡,找到組件存放位置,單擊“確定”按鈕,系統(tǒng)將自動(dòng)創(chuàng)建Bin文件夾,并將組件存放到該文件夾中。“添加引用”對(duì)話框如圖3.21所示。

圖3.21 “添加引用”對(duì)話框

(2)設(shè)置SupportFolder屬性

將存放有FreeTextBox組件資源文件的文件夾存放到aspnet_client文件夾中,然后設(shè)置SupplorFolder屬性為“aspnet_client/FreeTextBox/”。

(3)向頁面中添加組件

配置完成后,即可向頁面中的指定位置添加FreeTextBox組件。在向頁面中添加FreeTextBox組件前,首先需要通過代碼注冊(cè)該組件,在HTML源碼頂部添加注冊(cè)代碼如下:

注冊(cè)完成后,回到設(shè)計(jì)視圖,選中FreeTextBox組件,進(jìn)行相關(guān)屬性設(shè)置。

(4)寫入數(shù)據(jù)庫

完成以上配置后,就可以使用該組件,例如,留言簿模塊中通過FreeTextBox組件輸入留言內(nèi)容,并將輸入的內(nèi)容保存到數(shù)據(jù)庫中,關(guān)鍵代碼如下:

注意

將FreeTextBox組件中的內(nèi)容插入數(shù)據(jù)庫時(shí),需要在Web.Config文件的system.web節(jié)下加入<pages validateRequest="false"/>,否則可能會(huì)出現(xiàn)異常。

3.8.3 留言簿模塊實(shí)現(xiàn)過程

本模塊使用的數(shù)據(jù)表:tb_LeaveWord、tb_Revert

留言簿模塊的具體實(shí)現(xiàn)步驟如下:

(1)新建一個(gè)基于MasterPage.master母版頁的Web頁面,命名為LeaveWord.aspx,主要用于實(shí)現(xiàn)查看留言列表和留言功能,該頁面中主要用到的控件如表3.10所示。

表3.10 留言頁面主要用到的控件

(2)新建一個(gè)基于MasterPage.master母版頁的Web頁面,命名為LWordInfo.aspx,主要用于實(shí)現(xiàn)查看留言詳細(xì)信息和回復(fù)留言的功能,該頁面中主要用到的控件如表3.11所示。

表3.11 留言詳細(xì)信息及回復(fù)頁面主要用到的控件

(3)在LeaveWord.aspx頁面中,首先創(chuàng)建公共類DataOperate和LeaveWordOperate的對(duì)象,以便調(diào)用其中的方法,代碼如下:

例程30 代碼位置:資源包\TM\03\EnterpriseWeb\User\LeaveWord.aspx.cs

LeaveWord.aspx頁面的后臺(tái)代碼中自定義了一個(gè)Bind方法,該方法用來從數(shù)據(jù)庫中查找留言信息,并顯示在DataList控件中。Bind方法的實(shí)現(xiàn)代碼如下:

例程31 代碼位置:資源包\TM\03\EnterpriseWeb\User\LeaveWord.aspx.cs

LeaveWord.aspx頁面在加載時(shí),首先設(shè)置頁面標(biāo)題和第三方組件FreeTextBox的字體,然后調(diào)用自定義方法Bind對(duì)DataList控件進(jìn)行數(shù)據(jù)綁定。LeaveWord.aspx頁面的Page_Load事件代碼如下:

例程32 代碼位置:資源包\TM\03\EnterpriseWeb\User\LeaveWord.aspx.cs

在LeaveWord.aspx頁面中單擊“留言”按鈕,首先判斷留言主題或內(nèi)容是否為空,如果為空,彈出信息提示,否則調(diào)用LeaveWordOperate類中的AddLeaveWord方法添加留言信息。“留言”按鈕的Click事件代碼如下:

例程33 代碼位置:資源包\TM\03\EnterpriseWeb\User\LeaveWord.aspx.cs

在LWrodInfo.aspx頁面的后臺(tái)代碼中自定義了兩個(gè)方法,分別為Bind方法和deleteInfo方法。Bind方法用來根據(jù)接收的留言編號(hào)從數(shù)據(jù)庫中查找相關(guān)回復(fù)信息,并顯示在DataList控件中。Bind方法的實(shí)現(xiàn)代碼如下:

例程34 代碼位置:資源包\TM\03\EnterpriseWeb\User\LeaveWord.aspx.cs

deleteInfo方法用來根據(jù)指定的回復(fù)編號(hào)刪除回復(fù)信息,其實(shí)現(xiàn)代碼如下:

例程35 代碼位置:資源包\TM\03\EnterpriseWeb\User\LWordInfo.aspx.cs

LWrodInfo.aspx頁面在加載時(shí),首先設(shè)置頁面標(biāo)題和第三方組件FreeTextBox的字體,然后根據(jù)接收的留言編號(hào),從數(shù)據(jù)庫中查找其詳細(xì)信息,并顯示在相應(yīng)的Label控件中,最后調(diào)用方法Bind顯示該留言所對(duì)應(yīng)的回復(fù)信息。LWrodInfo.aspx頁面的Page_Load事件代碼如下:

例程36 代碼位置:資源包\TM\03\EnterpriseWeb\User\LeaveWord.aspx.cs

在LWrodInfo.aspx頁面中單擊“回復(fù)”按鈕,首先判斷回復(fù)內(nèi)容是否為空,如果為空,則彈出信息提示,否則調(diào)用RevertOperate類中的AddRevert方法添加回復(fù)信息,同時(shí)調(diào)用自定義方法Bind重新顯示最新的回復(fù)信息。“回復(fù)”按鈕的Click事件代碼如下:

例程37 代碼位置:資源包\TM\03\EnterpriseWeb\User\LeaveWord.aspx.cs

在LWrodInfo.aspx頁面中單擊“刪除”超級(jí)鏈接,首先判斷用戶是否登錄,如果已經(jīng)登錄,則判斷用戶是不是該留言的版主或管理員,如果是,則調(diào)用自定義方法deleteInfo方法刪除指定的回復(fù)信息。實(shí)現(xiàn)刪除回復(fù)信息的主要代碼如下:

例程38 代碼位置:資源包\TM\03\EnterpriseWeb\User\LeaveWord.aspx.cs

主站蜘蛛池模板: 浏阳市| 防城港市| 松桃| 施秉县| 凉山| 行唐县| 阿克陶县| 修文县| 乐至县| 酒泉市| 凯里市| 奉贤区| 米泉市| 乐山市| 浮梁县| 神木县| 秭归县| 昭平县| 孟州市| 长岭县| 永靖县| 远安县| 托里县| 乳山市| 洛阳市| 乌拉特前旗| 桓仁| 曲松县| 逊克县| 咸丰县| 南岸区| 林口县| 文水县| 理塘县| 东台市| 吉林省| 云南省| 临漳县| 上虞市| 丹东市| 兴和县|