《基于ASP NET 20 的內(nèi)容管理系統(tǒng)的設(shè)計與實現(xiàn)》由會員分享,可在線閱讀,更多相關(guān)《基于ASP NET 20 的內(nèi)容管理系統(tǒng)的設(shè)計與實現(xiàn)(5頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、基于ASP.NET 2.0的內(nèi)容管理系統(tǒng)的設(shè)計與實現(xiàn)
宮生文1 穆江波2
(1.青島科技大學(xué)信息學(xué)院 2.煙臺南山學(xué)院)
摘要: 本文首先介紹了內(nèi)容管理系統(tǒng)的相關(guān)知識和用到的技術(shù),接下來對內(nèi)容管理系統(tǒng)需求進行分析,給出了系統(tǒng)的功能和結(jié)構(gòu)框架的設(shè)計,最后介紹了系統(tǒng)的實現(xiàn),并著重介紹了重要的模塊文章管理模塊。系統(tǒng)的開發(fā)基于先進的 ASP.NET 2.0 技術(shù)、B/S 模式,綜合運用面向?qū)ο蟮脑O(shè)計思想,Web控件等相關(guān)知識開發(fā)設(shè)計,較好的滿足了可靠性、擴展性、可重用性,本系統(tǒng)的使用將大大減輕建立各類信息網(wǎng)站的復(fù)雜性,提供了一個方便高效的管理平臺和內(nèi)容實時發(fā)布平臺,有著良好的發(fā)展前景。
2、
關(guān)鍵詞:內(nèi)容管理系統(tǒng);CMS;Web控件;ASP.NET 2.0;面向?qū)ο?
1.引言
傳統(tǒng)的Web網(wǎng)站建設(shè)和維護的方法是: 首先設(shè)計Web網(wǎng)站的框架結(jié)構(gòu),然后設(shè)計HTML頁面,最后把設(shè)計好的HTML頁面納入Web網(wǎng)站的框架結(jié)構(gòu)中。這種網(wǎng)站建設(shè)模式比較適合小型網(wǎng)站和內(nèi)容相對固定(變化較少)的網(wǎng)站,因為對于信息量大,結(jié)構(gòu)復(fù)雜的門戶網(wǎng)站和政務(wù)平臺來說,這種方式具有諸多弊端:框架結(jié)構(gòu)維護復(fù)雜,不容易修改;頁面設(shè)計的工作量大,需要大量人力投入;網(wǎng)頁太多之后,不僅不易維護,也不易使用;容易產(chǎn)生死鏈接和錯誤鏈接。
基于Web的動態(tài)信息發(fā)布系統(tǒng),是將網(wǎng)頁上的某些需要經(jīng)常變動的信息,類似新產(chǎn)品發(fā)布
3、和業(yè)界動態(tài)等更新信息集中管理,并通過信息的某些共性進行分類,最后系統(tǒng)化、標(biāo)準(zhǔn)化發(fā)布到網(wǎng)站上的一種網(wǎng)站應(yīng)用程序。網(wǎng)站信息通過一個操作簡單的界面加入數(shù)據(jù)庫,然后通過已有的網(wǎng)頁模板格式與審核流程發(fā)布到網(wǎng)站上。它的出現(xiàn)大大減輕了網(wǎng)站更新維護的工作量,通過網(wǎng)絡(luò)數(shù)據(jù)庫的引用,將網(wǎng)站的更新維護工作簡化到只需錄入文字和上傳圖片,從而使網(wǎng)站的更新速度大大縮短,在某些專門的網(wǎng)上新聞?wù)军c,如新浪的新聞中心等,新聞的更新速度已經(jīng)縮短到五分鐘一更新,從而大大加快了信息的傳播速度,也吸引了更多的長期用戶群,時時保持網(wǎng)站的活動力和影響力[1]。
網(wǎng)站內(nèi)容管理系統(tǒng)(CMS)采用的數(shù)據(jù)庫技術(shù)能夠有效的解決以上問題,數(shù)據(jù)庫作為
4、后臺強大的內(nèi)容處理引擎,為Web服務(wù)器提供信息源。系統(tǒng)可以把數(shù)據(jù)庫中的信息按照規(guī)則預(yù)先自動生成HTML頁面,加入到Web服務(wù)器上,或者利用動態(tài)網(wǎng)頁生成技術(shù),在實時交互中動態(tài)產(chǎn)生網(wǎng)頁。系統(tǒng)包括信息采集、整理、分類、審核、發(fā)布和管理的全過程,具備完善的信息管理和發(fā)布管理功能,是企事業(yè)單位網(wǎng)站、內(nèi)部網(wǎng)站和各類ICP網(wǎng)站內(nèi)容管理和維護的理想工具。
2. 內(nèi)容管理系統(tǒng)簡介
CMS的英文全稱是:Content Management System,即網(wǎng)站內(nèi)容管理系統(tǒng)。它的基本思想是分離內(nèi)容的管理和設(shè)計。頁面美工設(shè)計存儲在模板里,而內(nèi)容存儲在數(shù)據(jù)庫或獨立的文件中,當(dāng)一個用戶請求頁面時,各部分聯(lián)合生成一個標(biāo)
5、準(zhǔn)的HTML頁面或發(fā)布時被預(yù)歸檔頁面,合成的Web頁面可能包含多個數(shù)據(jù)源,一個內(nèi)容管理系統(tǒng)通常有如下要素:①文檔模板;②腳本語言或標(biāo)記語言;③與數(shù)據(jù)庫集成;④內(nèi)容的包含物由內(nèi)嵌入頁面的特殊標(biāo)記控制。這些標(biāo)記對于一個內(nèi)容管理系統(tǒng)通常是唯一的。 這些系統(tǒng)通常有對較復(fù)雜的操作的語言支持,如 PHP、ASP 或 Java 等。
內(nèi)容管理系統(tǒng)對站點管理和創(chuàng)造編輯都有好處。這其中最大的好處是能夠使用模板和通用的設(shè)計元素以確保整個網(wǎng)站的協(xié)調(diào)。作者只需在他們的文檔中采用少量的模板代碼,然后即可把精力集中在設(shè)計之上的內(nèi)容了。要改變網(wǎng)站的外觀, 管理員只需修改模板而不是一個個單獨的頁面。
內(nèi)容管理系統(tǒng)也簡化
6、了網(wǎng)站的內(nèi)容供給和內(nèi)容管理的責(zé)任委托。很多內(nèi)容管理系統(tǒng)允許對網(wǎng)站的不同層面人員賦予不同等級的訪問權(quán)限,這使得他們不必研究操作系統(tǒng)級的權(quán)限設(shè)置,只需用瀏覽器接口即可完成。
集成的功能如:站內(nèi)搜索、投票、Web郵件列表等也會內(nèi)置于內(nèi)容管理系統(tǒng) CMS內(nèi),或允許以第三方插件的形式集成進來。
3.系統(tǒng)設(shè)計
3.1 系統(tǒng)數(shù)據(jù)庫的設(shè)計
內(nèi)容管理系統(tǒng)中的文章模塊主要涉及3個主要部分:文章、分類和評論(其他的三個功能包含在文章的添加里),同時將3個部分抽象成3個類,在數(shù)據(jù)庫設(shè)計中,按照面向?qū)ο蟮乃枷耄梢愿鶕?jù)這3個分類在系統(tǒng)數(shù)據(jù)庫中設(shè)計3個數(shù)據(jù)表:文章表、分類表和評論表,分別如表3-1、3-2、3-3
7、所示:
表3-1dbo.Article-----文章表
表名
Article(文章表)
列名
數(shù)據(jù)類型(精度范圍)
空/非空
中文名稱
約束條件
ArticleID
int(自動編號)
非空
文章編號
主鍵
ArticleName
nvarchar(50)
非空
文章標(biāo)題
ArticleAuthor
nvarchar(50)
可空
文章作者
ArticleContent
varchar(MAX)
非空
文章內(nèi)容
ArticleEditor
nvarchar(50)
空可
文章編者
ArticleSo
8、urce
nvarchar(50)
可空
文章來源
下拉框
ArticleClassID
int
非空
文章類別編號
外鍵
ClassName
nvarchar(50)
非空
文章類別名稱
下拉框
Hits
int
非空
點擊數(shù)
不可人為修改
Readlevel
int
非空
閱讀級別
下拉框
Pass
Bit
可空
審核
復(fù)選框
Edittime
datetime
非空
編輯時間
不可人為修改
Issuetime
datetime
非空
發(fā)表時間
Pasttime
datetime
可空
過期時間
可選
9、擇
Copyright
nvarchar(50)
可空
版權(quán)
下拉框
Score
int
非空
文章評級分?jǐn)?shù)
表3-2 dbo.Class-----文章類別表
表名
Class(類別表)
列名
數(shù)據(jù)類型(精度范圍)
空/非空
中文名稱
約束條件
ArticleClassID
int(自動編號)
非空
文章類別編號
主鍵
ClassName
nvarchar(50)
非空
類別名稱
ClassIntr
nvarchar(50)
可空
類別說明
Photos
nvarchar(MAX)
可空
類別圖片
表3-3
10、 dbo. Comment-----評論表
表名
Comment(評論表)
列名
數(shù)據(jù)類型(精度范圍)
空/非空
中文名稱
約束條件
CommentID
int(自動編號)
非空
評論的編號
主鍵
ArticleID
int
非空
對應(yīng)文章編號
外鍵
Commenttext
nvarchar(50)
非空
評論內(nèi)容
Comname
nvarchar(50)
空
評論者姓名
默認(rèn)為游客
Commenttime
datetime
非空
評論發(fā)表時間
默認(rèn)為系統(tǒng)當(dāng)前時間
補充說明
3.2系統(tǒng)內(nèi)站點地圖的設(shè)計
系統(tǒng)內(nèi)
11、站點地圖的設(shè)計作用是為了方便用戶對網(wǎng)站頁面的具體導(dǎo)航有具體的認(rèn)識和了解,知道自己的所處的網(wǎng)站頁面位置,另外在后臺也便于使用TreeView控件生成后臺的內(nèi)容管理樹狀結(jié)構(gòu)圖以及使用Menu控件生成網(wǎng)頁位置導(dǎo)航。系統(tǒng)的整體前臺頁面功能導(dǎo)航如圖3-1所示:
圖3-1整體前臺頁面導(dǎo)航圖
4.系統(tǒng)功能的具體實現(xiàn)
4.1文章類別管理功能
在后臺的管理模塊中管理員可以對文章類別進行添加、修改、刪除,在后臺所作的修改會反映在前臺的文章類別的顯示上。
4.2文章管理功能
在此功能模塊,管理員可以對文章進行新添、修改、刪除等操作,在文章模塊里說做的修改,同樣會顯示在前臺的文章列表上。
4.3文章
12、評論及評分功能
4.3.1文章評論的添加
文章評論的添加功能是在前臺實現(xiàn)的,頁面的初始情況下,評論框是隱藏的。在文章顯示頁面的文章顯示框下面有一個按鈕,當(dāng)用戶點擊時,評論框就會自動顯示,評論時間的初始化顯示為系統(tǒng)當(dāng)前時間,并且用戶不能修改,當(dāng)用戶寫完評論點擊添加時,它所添加的評論就會自動顯示在文章的下面。
4.3.2文章評分功能
文章的評分功能和評論在一起的,緊跟在文章征文的后面,分?jǐn)?shù)的多少是以五個五角星來顯示的,這里的實現(xiàn)用了一個自定義控件RatingDisplaying,而分?jǐn)?shù)的制定使用了一個RadioButtonList控件,當(dāng)用戶選中RadioButtonList控件里面對一個
13、單選按鈕時,便會調(diào)用控件的SelectedValue屬性,將選取的值傳給一個定義好的參數(shù),然后和文章的點擊數(shù)利用設(shè)定好的公式ave = scores * 2 / hit算出一個平均值傳給RatingDisplaying控件,RatingDisplaying控件著根據(jù)獲得值顯示相應(yīng)的五角星數(shù)。
5.系統(tǒng)測試
5.1測試用例
在后臺文章模塊的各個管理頁面里輸入相應(yīng)要填寫的內(nèi)容來進行測試。
在文章類別添加頁面的各個文本框里填入相應(yīng)內(nèi)容,點擊添加后去類別管理頁面能查看到新添加的類別;當(dāng)不輸入類別名稱或類別說明是會出現(xiàn)相應(yīng)的錯誤提示,在類比圖片添加不符合要求或輸入為空時也會彈出對話框來提示操作錯
14、誤。
在文章添加頁面里,驗證功能和類別添加相似,這里不再累述,只是在文章添加頁面里有文章的過期時間和發(fā)布時間,當(dāng)發(fā)布時間小于過期時間時,會出現(xiàn)錯誤提示,此功能經(jīng)試驗成功實現(xiàn)。
文章評論的添加功能是在前臺實現(xiàn),當(dāng)添加完評論后,添加的評論會馬上顯示在文章的下面;另外給文章打分的功能,用戶點擊文章下面的分?jǐn)?shù)單選框時,頁面回發(fā),在分?jǐn)?shù)上面的黃色五角星會根據(jù)評分的多少來進行相應(yīng)的顯示,以上講到的評論模塊功能也成功實現(xiàn)。
5.2測試結(jié)果
功能名稱:文件類別管理
功能描述:“添加文章類別”,“添加文章類別說明”,“添加類別圖片”,“編輯以及刪除文章類別”4個功能模塊
測試結(jié)果:能成功的實現(xiàn)該任務(wù)
15、
功能名稱:文件管理
功能描述:“添加文章”,“刪除文章”,“修改文章”3個功能模塊
測試結(jié)果:能成功的實現(xiàn)該任務(wù)
功能名稱:文件評論管理
功能描述:“前臺添加文章評論”,“后臺察看某篇文章評論”,“后臺刪除該篇文章對應(yīng)的所有評論,也可以單條的刪除評論”3個功能模塊
測試結(jié)果:能成功的實現(xiàn)該任務(wù)
5.3結(jié)果分析
效率分析:
系統(tǒng)采用目前比較先進的開發(fā)工具.NET,采用B/S架構(gòu)模式,開發(fā)速度較其它開發(fā)工具相比速度快,運行速度也是比較快的。本系統(tǒng)具有良好的用戶界面,便于用戶使用及操作。
可靠性分析:
本系統(tǒng)具有良好的可靠性,經(jīng)過測試,當(dāng)進行添加、刪除、修改、查詢等操作時都
16、會得到正確的數(shù)據(jù)。當(dāng)然由于時間的限制程序中可能還存在一些問題沒有調(diào)試出來,以后在系統(tǒng)升級的時候,相信會做的更好。
容錯性分析:
本系統(tǒng)具有良好的容錯性,當(dāng)用戶輸入不合理時,會給出相應(yīng)的提示,不會影響程序的正常運行。例如:在添加文章類別信息時,當(dāng)輸入圖片格式不正確時,如果有*標(biāo)記的文本框有空著未填的話,系統(tǒng)都會給出提示。當(dāng)用戶進行誤操作發(fā)生錯誤時,程序?qū)⒉蹲桨l(fā)生的錯誤并進行相應(yīng)的處理,達到容錯性的目的。
6.小結(jié)
本文的設(shè)計思想是從實用和研究角度出發(fā),分析了當(dāng)前網(wǎng)站內(nèi)容管理的現(xiàn)狀,針對大多數(shù)系統(tǒng)使用不方便、可移植性差、平臺不獨立、不安全因素提出了使用ASP.NET技術(shù)來實現(xiàn)一個基于 B/
17、S 模式的內(nèi)容管理系統(tǒng),給出了一個系統(tǒng)的設(shè)計方案,包括性能分析、功能分析、數(shù)據(jù)庫分析等,建立了系統(tǒng)的開發(fā)平臺,包括數(shù)據(jù)庫的選擇、開發(fā)語言和工具的選擇、服務(wù)器的運行環(huán)境等,重點描述了文章模塊功能的實現(xiàn)全過程。本系統(tǒng)具有以下的功能和特點:
(1)站點內(nèi)容易于管理和維護,站點改版工作量小,實時性強。
(2)由于數(shù)據(jù)庫訪問的開銷遠(yuǎn)高于文件訪問,這大大提高了對系統(tǒng)硬件平臺的要求;
(3)當(dāng)站點訪問量很大時,需要通過其他技術(shù)解決,如集群等。
(4)需要數(shù)據(jù)庫服務(wù)器的支持,不利于租用空間的中、小型用戶使用。
參考文獻:
[1]曹天杰,張永平.管理信息系統(tǒng)中基于角色的訪問控制[J].計算機應(yīng)用,2
18、005,第8 期,18~23
[2]天極網(wǎng)新技術(shù)研究室著.《ASP.NET完全入門》[M].重慶:重慶出版社,2001
[3]Chris Payne著.《ASP.NET從入門到精通》[M].北京:人民郵電出版社,2002
[4]Scott Worley著.《ASP.NET技術(shù)內(nèi)幕》[M].王文龍,劉湘寧譯.北京:人民郵電出版社,2002
[5](英)John Sharp著.《Visual C# 2005從入門到精通》[M].夏普著,周靖譯.北京:清華大學(xué)出版社,2006
[6]鄒建峰,周山峰,項細(xì)威著.《C#企業(yè)級開發(fā)案精解》[M].北京:人民郵電出版社,2006
作者:宮生文,青島科技大學(xué)講師
聯(lián)系方式:gsw780604@126.Com
Tel:13808983374
地址:青島科技大學(xué)信息學(xué)院東部校區(qū) 郵編:266061