![電子商務網上購書信息管理系統(tǒng)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/16/cde4223e-e1ec-431d-b9cd-acdce9815b6f/cde4223e-e1ec-431d-b9cd-acdce9815b6f1.gif)
![電子商務網上購書信息管理系統(tǒng)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/16/cde4223e-e1ec-431d-b9cd-acdce9815b6f/cde4223e-e1ec-431d-b9cd-acdce9815b6f2.gif)
![電子商務網上購書信息管理系統(tǒng)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/16/cde4223e-e1ec-431d-b9cd-acdce9815b6f/cde4223e-e1ec-431d-b9cd-acdce9815b6f3.gif)
![電子商務網上購書信息管理系統(tǒng)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/16/cde4223e-e1ec-431d-b9cd-acdce9815b6f/cde4223e-e1ec-431d-b9cd-acdce9815b6f4.gif)
![電子商務網上購書信息管理系統(tǒng)_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/16/cde4223e-e1ec-431d-b9cd-acdce9815b6f/cde4223e-e1ec-431d-b9cd-acdce9815b6f5.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第1章 電子商務網上購書信息管理系統(tǒng) 1.1用戶需求的分析與處理 1.1.1任務名稱:用戶需求的分析與處理1.1.2任務描述依據電子商務的特點與基本流程以及用戶需求調查報告,通過理解需求階段的目標,給業(yè)務上下文和系統(tǒng)功能建模,在完整的用例模型中記錄系統(tǒng)需求,完成需求模型報告,最后依據需求模型報告進行產品需求規(guī)格說明書的撰寫。1.1.3任務分析需求分析人員要按“初始、細化、構造與移交四步走”的路線,通過“以目標為基礎、以用例為中心的三次迭代式需求分析”的過程來完成對用戶需求的分析。(1)第一次迭代(初始):學會進行項目目標分解、進行項目目標可研分析,構造提交項目目標模型,形成項目大綱。(2)第二
2、次迭代(細化):學會進行用例圖建模,進行客戶需求分析,構造提供軟件功能模型,形成客戶需求文檔。(3)第三次迭代(構造):學會對用例進行“三位”一體的描述方式,分析軟件用例的動態(tài)行為,構造提交用例的業(yè)務流程圖、實體類圖、原型圖,形成產品需求說明書。需求驗證(移交):學會從需求類型與屬性角度評估需求的質量,移交產品需求說明書網上購書業(yè)務流程開始是否是會員登錄注冊放入購物車下訂單支付結束瀏覽網頁查看圖書詳情是否1.1.5需求分析人員分析用戶的需求 第一步:細化并分析用戶需求對比較復雜的用戶需求進行建模分析,以幫助軟件開發(fā)人員更好地理解需求。第二步:撰寫產品需求規(guī)格說明書 需求分析員按照指定的文檔模板
3、撰寫產品需求規(guī)格說明書。如果待開發(fā)的產品分為軟件和硬件兩部分的話,則應當撰寫軟件需求規(guī)格說明書和硬件需求規(guī)格說明書。第三步:進行需求確認1需求建模(1)目標模型步驟:第一步:建立業(yè)務目標到軟件功能目標的轉化模型第二步:建立業(yè)務限制因素到軟件非功能目標的轉化第三步:建立軟件功能目標與非功能目標之間的雙向束定關系經過綜合得到如下關系模型:2)用例模型用例模型是系統(tǒng)既定功能及系統(tǒng)環(huán)境的模型,它可以作為客戶和開發(fā)人員之間的契約。用例是貫穿整個系統(tǒng)開發(fā)的一條主線。一個用例模型包括了系統(tǒng)的所有用例,它是系統(tǒng)所有可能用途的總和。藍星網上購書信息管理系統(tǒng)用例一覽表如表1-1所示:目標角色FG1:目錄管理FG2
4、:圖書管理FG3:購物車管理FG4:訂單管理FG5:支付管理FG6:會員管理管理員FG1:UC1:目錄創(chuàng)建FG1:UC2:目錄編輯FG1:UC3:目錄撤銷FG1:UC4:目錄查看FG2:UC1:圖書入庫FG2:UC2:圖書出庫FG2:UC3:圖書撤銷FG2:UC4:圖書檢索FG2:UC5:圖書概要信息查看FG2:UC6:圖書詳細信息查看FG4:UC3:訂單狀態(tài)編輯FG4:UC4:訂單信息查看FG4:UC5:訂單檢索FG4:UC6:訂單撤銷FG4:UC7:訂單明細信息查看FG4:UC8:訂單狀態(tài)信息查看FG6:UC1:會員注冊FG6:UC2:會員撤銷會員FG1:UC4:目錄查看FG2:UC5:圖
5、書概要信息查看FG2:UC5:圖書詳細信息查看FG3:UC1:購物車圖書添加FG3:UC2:購物車圖書計價FG3:UC3:購物車圖書數(shù)量更新FG3:UC4:購物車圖書信息瀏覽FG3:UC5:購物車圖書移除FG3:UC6:購物車圖書清空FG4:UC1:訂單生成FG4:UC2:個人訂單信息查看FG5:UC1:信用卡支付FG6:UC3:個人資料修改FG6:UC4:會員登陸游客FG1:UC4:目錄查看FG2:UC5:圖書概要信息查看FG2:UC5:圖書詳細信息查看FG6:UC1:會員注冊銀行賬戶處理系統(tǒng)FG5:UC2:轉賬(3)業(yè)務對象模型2.撰寫需求規(guī)格說明書產品需求規(guī)格說明書的重點是闡述“做什么”
6、,而不是闡述“怎么做”。產品需求規(guī)格說明書應當正確、清楚、無二義性、一致、完備、可實現(xiàn)以及可驗證。 “正確”是產品需求規(guī)格說明書最重要的屬性。真正的困難是開發(fā)者和用戶自己都不明白用戶究竟“想要什么”和“不要什么”。為確保需求是正確的,開發(fā)方和用戶必須對需求規(guī)格說明書進行確認;清楚的需求讓人易讀易懂,不在于文檔的厚度; “無二義性” 是指每個需求只有唯一的含義。如果一個人說的話,不同的人可能有不同的理解,那么這句話就有二義性。如果需求存在二義性,將會導致人們誤解需求而開發(fā)出偏離需求的產品。為了使需求無二義性,人們在寫產品需求規(guī)格說明書時措詞應當準確,切勿模棱兩可。“一致”(Consistent)
7、是指產品需求規(guī)格說明書中各個需求之間不會發(fā)生矛盾。矛盾常常潛伏在需求文檔的上下文中?!巴陚洹保–omplete)是指產品需求規(guī)格說明書中沒有遺漏一些必要的需求。人們往往傾向于關注系統(tǒng)的特色功能,而忽視了其它一些不起眼的但卻是必需的功能。 “可實現(xiàn)”意味著在技術上是可行的,并且滿足時間、費用、質量等約束。經過雙方確認的產品需求規(guī)格說明書相當于商業(yè)合同,如果開發(fā)方不能夠實現(xiàn)產品需求規(guī)格說明書中的內容,那就是違約,可能會被罰款的。產品需求規(guī)格說明書中的各項需求對用戶方而言應當都是可驗證的(Verifiable)。如果需求是不可驗證的,那么用戶就無法驗收軟件,可能會發(fā)生商業(yè)糾紛。1.2項目計劃安排 1
8、.2.1任務名稱:項目計劃安排藍星網上購書管理信息系統(tǒng)項目計劃安排1.2.2任務描述編寫藍星網上購書信息管理系統(tǒng)用于協(xié)調所有項目計劃編制文件、指導項目執(zhí)行和控制的文件。要清楚地描述出: 項目劃分的各個實施階段 每個階段的工作重點和任務是什么 完成本階段工作和任務的人力、資源需求,時間期限 階段工作和任務的成果形式 項目實施過程中對風險、疑難、其他不可預見因素等的處理機制 各任務組及開發(fā)人員之間的組織、協(xié)調關系等。1.2.3任務分析根據GB856788計算機軟件產品開發(fā)文件編制指南中項目開發(fā)計劃的要求,結合實際情況調整后的項目計劃書主要內容索引如下: 項目概述 -項目目標 -產品目標與范圍 -假
9、設與約束 -項目工作范圍 -應交付成果 - -需完成的軟件 -需提交用戶的文檔-須提交內部的文檔 -應當提供的服務 -項目開發(fā)環(huán)境 -項目驗收方式與依據 項目團隊組織 -組織結構 -人員分工 -協(xié)作與溝通-內部協(xié)作-外部溝通 實施計劃 支持條件 預算(可選) 關鍵問題 專題計劃要點1.2.4項目概述本產品應是一個具有靈活性和系統(tǒng)性,可擴充性和可維護性強,可以不斷延續(xù)發(fā)展的電子商務軟件,其包括的內容有:q 在對網上購書信息管理系統(tǒng)總體業(yè)務進行分析的基礎上進行提煉,充分考慮系統(tǒng)性與可擴充性 q 遵循各種國際,國家及行業(yè)標準 q 綜合考慮與外部系統(tǒng)(銀行等)的接口 q 系統(tǒng)必須實用,友好,穩(wěn)定,可靠
10、,可移植性好,可擴充性好。 q 方便實施與維護,能減輕客戶化工作 q 建立新型的業(yè)務與技術模型,注重業(yè)務流程的重用性與可定制性,用戶能根據自身的需要方便的定義,采用基于三層框架的內核,并以內核為框架,采用面向組件對象的方式,建立以面向組件為基礎的結構化的綜合應用體系。靈活的實現(xiàn)應用對象的重組,降低維護管理的成本;同時基于接口技術的應用可以使得體系更加靈活和便于擴充,具備“平臺”的概念。應交付成果 1程序存儲程序的媒體光盤程序功能概述主要實現(xiàn)圖書信息在線瀏覽、放入購物車及在線下訂單及完成支付的功能 2文件系統(tǒng)名稱文件藍星網上購書信息管理系統(tǒng)需求規(guī)格說明書用戶手冊表1-3 交付文件3服務系統(tǒng)名稱服
11、務藍星網上購書信息管理系統(tǒng)兩年免費售后服務(開發(fā)新功能費用另行計算)表1-4 提供服務4非移交的產品藍星網上購書信息管理系統(tǒng)概要設計說明書數(shù)據庫設計說明書詳細設計說明書模塊開發(fā)說明測試報告表1-5 非移交產品 前期的項目計劃表使用Project軟件制作一個前期的項目計劃表,隨著開發(fā)工作的深入,該項目計劃表會不斷的被加以細化和補充。圖1-7 甘特圖1.3系統(tǒng)設計 軟件構架是指一個系統(tǒng)的基礎組織,具體體現(xiàn)在系統(tǒng)的組成構件,構件之間、構件和環(huán)境之間的關系,以及指導其設計和演化的原則上。1.3.1任務名稱:系統(tǒng)設計1.3.2任務描述設計藍星網上購書信息管理系統(tǒng)構架1.3.3任務分析RUP的整個分析與設
12、計過程如下圖所示,其中Architect即為軟件架構師角色,從下圖中可見系統(tǒng)架構從分析到設計的全部活動。圖1-8 系統(tǒng)架構分析與設計活動 1.3.4層圖(邏輯視圖)表示層ASP.NET Web 窗體Membership ProviderProfile Provider前臺銷售窗體后臺管理窗體業(yè)務邏輯層圖書目錄管理圖書信息管理購物車管理訂單管理數(shù)據訪問層圖書目錄數(shù)據訪問購物車數(shù)據訪問圖書信息數(shù)據訪問訂單數(shù)據訪問業(yè)務實體SQL 2005 數(shù)據庫Membership Profile 圖1-11 層圖1.3.5包圖(開發(fā)視圖)圖1-12 包圖1.3.6部署圖(物理視圖)圖1-13 部署圖1.3.7選擇
13、技術開發(fā)環(huán)境:Microsoft Visual Studio2008集成開發(fā)環(huán)境編程語言:ASP.NET+C#中間件:Microsoft DotnetFrameWork 3.5數(shù)據庫:Microsoft SQL Server20051.3.8安全策略網上書店的實施,其關鍵是要保證整個商務過程中系統(tǒng)的安全性。實現(xiàn)網上書店的關鍵是要保證商務活動過程中系統(tǒng)的安全性,即保證基于互連網的電子交易過程與傳統(tǒng)交易的方式一樣安全可靠。1密碼技術采用MD5加密。2訪問控制 采用授權策略和機制。保護可以從以下幾個方面加以考慮:物理隔離、時間隔離、密碼隔離。3防火墻技術采用分組過濾防火墻技術。 1.3.9并發(fā)策略1
14、.對于業(yè)務數(shù)據低級并發(fā)控制由數(shù)據庫事務和線程監(jiān)視器自動管理,對業(yè)務服務的每一次使用都封裝在一個事務中,以正確傳送給數(shù)據庫管理系統(tǒng)。2.會員不可以重復登錄,只能登錄一次3.在脫線狀態(tài)下更新數(shù)據庫數(shù)據,在凌晨使更新真正生效1.4子系統(tǒng)設計 1.4.1任務名稱:子系統(tǒng)設計 1.4.2任務描述完成藍星網上購書信息管理系統(tǒng)子系統(tǒng)設計,包括類的設計、用例具體實現(xiàn)、用戶界面設計以及數(shù)據庫設計。1.4.3任務分析通過子系統(tǒng)設計將形成一個可用的、完整的解決方案,并且能夠比較容易地將方案轉換成程序代碼。該任務在.NET標準三層系統(tǒng)架構的基礎上,將考慮所有的實現(xiàn)技術問題,對分析階段的模型進行擴展和細化,并對分析階段
15、定義的類進一步擴充,定義新的類來處理技術方面的問題,最終形成最后的解決方案。(一)遵循類的設計原則:開閉原則:對擴展開放而對變更封閉;依賴倒置原則:依賴抽象類而非具體類;Liskov替換原則:子類應當能完全替代其基類;單一職責原則:一個類只應當承擔單一和集中的職責,這樣引發(fā)類進行變更的原因只有一個;接口分離原則:為客戶提供多個物定的接口好過一個多種用途集于一身的接口,即客戶不被強制依賴于其不需要的操作;組合復用原則:盡可能地使用對象的多態(tài)組合而非繼承來實現(xiàn)復用所知最少原則:一個類的操作實現(xiàn)中,只應調用下列對象的操作:它自己、作為參數(shù)傳入的對象、它創(chuàng)建的對象、它包含的對象。(二)實現(xiàn)系統(tǒng)用例實現(xiàn)
16、系統(tǒng)用例的方式通常顯示出用例如何通過一系列協(xié)作類進行實現(xiàn),這是系統(tǒng)內部行為的模型,它可以用兩個UML 工件來描述:實現(xiàn)類圖和順序圖。(三)用戶界面的設計在每個用戶界面中,都應提供對應各個用例的窗口,在用戶界面和用例之間應具有清晰的映射關系。(四)數(shù)據庫設計面向對象的數(shù)據庫設計是從對象模型出發(fā)的,屬于實體主導型設計,數(shù)據庫設計(模式)是否支持應用系統(tǒng)的對象模型,這是判斷是否是面向對象數(shù)據庫系統(tǒng)的基本出發(fā)點。由于應用系統(tǒng)設計在前,數(shù)據庫設計隨后,所以應用系統(tǒng)對象模型向數(shù)據庫模式的映射是面向對象數(shù)據庫設計的關鍵。由于 RDBMS 是以二維表為基本管理單元的,所以對象模型最終是由二維表及表間關系來描述
17、的。換言之,對象模型向數(shù)據庫概念模型的映射就是向數(shù)據庫表的變換過程。有關的變換規(guī)則簡單歸納如下:一個對象類可以映射為一個以上的庫表,當類間有一對多的關系時,一個表也可以對應多個類。關系(一對一、一對多、多對多以及三項關系)的映射可能有多種情況,但一般映射為一個表,也可以在對象類表間定義相應的外鍵。對于條件關系的映射,一個表至少應有3個屬性。單一繼承的泛化關系可以對超類、子類分別映射表,也可以不定義父類表而讓子類表擁有父類屬性;反之,也可以不定義子類表而讓父類表擁有全部子類屬性。對多重繼承的超類和子類分別映射表,對多次多重繼承的泛化關系也映射一個表。對映射后的庫表進行冗余控制調整,使其達到合理的
18、關系范式。1.4.4類的列表包類名說明WebDefault前臺首面頁面類BookBrief前臺圖書概要頁面類Item前臺圖書詳情頁面類ShoppingCart前臺購物車頁面類CheckOut前臺訂單頁面類UserProfile前臺個人設置頁面類Search前臺圖書檢索頁面類Register前臺會員注冊頁面類adminDefault后臺首頁頁面類Category后臺目錄管理頁面類Book后臺圖書管理頁面類Order訂單管理頁面類Login后臺登錄頁面類BLLOrderManager訂單管理邏輯類CategoryManager目錄管理邏輯類BookBriefManager圖書概要管理邏輯類Item
19、Manager圖書詳情管理邏輯類CartManager購物車管理邏輯類AccountManager賬戶設置管理邏輯類DALOrderAccess訂單數(shù)據訪問類CategoryAccess目錄數(shù)據訪問類BookBriefAccess圖書概要數(shù)據訪問類ItemAccess圖書詳情數(shù)據訪問類CartAccess購物車數(shù)據訪問類ModelOrderInfo訂單信息類CategoryInfo目錄信息類BookBriefInfo圖書概要信息類ItemInfo圖書詳情信息類CartInfo購物車信息類LineItemInfo訂單明細信息類OrderStateInfo訂單狀態(tài)信息類AddressInfo賬戶地
20、址信息類CommonDataBase數(shù)據庫連接類SQLStringSQL語句構造類表1-13 類的列表 1.4.5類的規(guī)格說明示例CartManager: 字段名稱 類型 說明字段名稱類型說明cartItemsDictionaryprivate,購物車圖書集合dalCartAccessprivate static readonly, CartAccess 對象表1-14 CartManager私有數(shù)據成員 屬性名稱類型說明Totaldecimalpublic,購物車圖書總價格Countintpublic,購物車中所選定圖書項數(shù)CartItemsICollectionpublic,購物車中選購信
21、息集合表1-15 CartManager公共屬性 方法名稱返回值類型返回值的說明參數(shù)參數(shù)類型參數(shù)的說明概要SetQuantityvoid空BookIdqtystring int圖書編號購買數(shù)量公有方法,設置所購要購買圖書的購買數(shù)量Addvoid空bookIdstring圖書編號公有方法,將選定圖書放入購物車Addvoid空cartItemCartInfo購物車明細對象公有方法,將Cart表中一條記錄數(shù)據添加到購物車中Removevoid空bookIdstring圖書編號公有方法,從購物車中按書號移除圖書Clearvoid空公有方法,清空購物車中所有圖書GetCartItems void空use
22、rnamestring會員的用戶名公有方法,調用CartAccess類的同名方法SetCartItemsvoid空usernamecartItemsstringICollection會員的用戶名購物車圖書集合公有方法,調用CartAccess類的同名方法GetOrderLineItemsLineItemInfo訂單明細對象數(shù)組公有方法,將購物車中圖書信息轉換成訂單明細信息1.4.6用例具體實現(xiàn)示例-購物車圖書添加(放入圖書到購物車):圖1-14 購物車圖書添加序列圖 放入購物車查看所選圖書信息圖1-15 圖書詳情頁面圖1-16 購物車頁面面訂單生成:訂單頁面: 1.4.7系統(tǒng)用戶界面總覽略.1
23、.4.8數(shù)據庫設計如在任務分析中所述,面向對象的數(shù)據庫設計是從對象模型出發(fā)的,屬于實體主導型設計,我們由如下圖所示之業(yè)務實體出發(fā)完成向數(shù)據庫概念模型的映射。用戶自定義的數(shù)據表: 序號表名含意初始大小最大增長范圍增長方式1Category圖書類別表128KB640KB自動計算:增長速率:1行/月2BookBrief圖書概要信息表256KB16MB自動計算:增長速率:20行/月3Item圖書詳情信息表256KB16MB自動計算:增長速率:20行/月4Cart購物車信息表128KB10MB自動計算:增長速率:1000行/月5Orders訂單頭信息表256KB51MB自動計算:增長速率:30行/月6L
24、ineItem訂單明細表128KB16MB自動計算:增長速率:1000行/月7OrderStatus訂單狀態(tài)表128KB16MB自動計算:增長速率:1000行/月ASP.NET自動生成的數(shù)據表: 表名說明aspnet_Applications應用程序的基本信息:程序名、程序描述等aspnet_Membership用戶的詳細信息:用戶名、郵箱等aspnet_Paths應用程序路徑信息aspnet_PersonalizationAllUser存儲所有用戶的個性化信息aspnet_PersonalizationPerUser存儲特定用戶的個性化信息aspnet_Profile個性化配置的內容aspn
25、et_Roles角色表aspnet_SchemaVersions各部分的版本信息aspnet_Users用戶表aspnet_UsersInRoles用戶與角色的關系表aspnet_WebEvent_Events存儲事件日志信息數(shù)據庫關系圖:圖1-27 數(shù)據庫關系圖1.5開發(fā)前期的解決方案構建 1.5.1任務名稱:開發(fā)前期的解決方案構建1.5.2任務描述創(chuàng)建解決方案:本項目解決方案由五個項目組成,分別是網站WEB、類庫BLL、類庫DAL、類庫Model、類庫COMMON等。1在類庫Model中創(chuàng)建業(yè)務實體類2在類庫Common中創(chuàng)建公共類數(shù)據庫連接類DataBase 3創(chuàng)建網站母版頁及設計主題4
26、創(chuàng)建站點地圖1.5.3任務分析網站WEB對應表示層,主要應包含網頁頁面、用戶控件等,類庫BLL中包含所有業(yè)務邏輯層中的類,類庫DAL中包含所有數(shù)據訪問層中的類,類庫Model中則包含所有業(yè)務實體類,類庫COMMON包含公共類。各項目中詳細內容可參見第四節(jié)子系統(tǒng)設計中的類的列表。如果一個類庫中的類要調用另一個類庫中的類,則要在該類庫中添加對另一個類庫的引用。在設計母版頁時則要注意,母版頁是一個頁面模板,包含的是頁面的公共部分,因此,在創(chuàng)建母版頁之前,必須判斷哪些內容是頁面的公共部分,比較常見的公共部分通常有片頭、頁腳、功能側欄等。單獨的母版頁只是一個頁面模板,它不能在瀏覽器中被打開,只有將其應用
27、到具體的某個內容頁上,在瀏覽器中訪問該內容頁,其才能發(fā)揮作用。站點地圖的擴展名為.sitemap,是ASP2.0及ASP3.5提供的為站點導航控件-如本項目中使用的SiteMapPath控件提供站點的層次結構信息的標準XML文件。在解決方案中依次創(chuàng)建網站及類庫BLL 、 DAL、類庫Model、類庫Common,解決方案創(chuàng)建完成如下圖所示:圖1-33 完整的解決方案1.5.5在類庫Model中創(chuàng)建業(yè)務實體類1圖書目錄實體類CategoryInfo2圖書概要實體類BookBriefInfo3圖書詳情實體類ItemInfo4購物車實體類CartInfo5訂單類OrdersInfo6訂單明細類Lin
28、eItemInfo 7地址類AddressInfo 1.5.6在類庫Common中創(chuàng)建公共類數(shù)據庫連接類DataBase主要方法:/ / 對數(shù)據庫進行增刪改方法 / / SqlCommand對象的命令類型 / SqlCommand對象的文本 / SqlCommand對象的參數(shù) / public void ExcuteNonQuery(CommandType ct, string cmdTxt, SqlParameter cmdParms)/對數(shù)據庫進行增刪改方法 SqlCommand cmd = new SqlCommand(); this.Preparecommand(cmd, ct, cm
29、dTxt, cmdParms); cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); this.Close(); / / 讀取數(shù)據 / / SqlCommand對象的命令類型 / SqlCommand對象的文本 / SqlCommand對象的參數(shù) / public SqlDataReader ExcuteDataReader(CommandType ct, string cmdTxt, SqlParameter cmdParms)/讀取數(shù)據 SqlCommand cmd = new SqlCommand(); this.Preparecommand(c
30、md, ct, cmdTxt, cmdParms); return cmd.ExecuteReader(CommandBehavior.CloseConnection); 設計解決方案中網站Web的母版頁母版頁效果圖:圖1-34 母版頁組成1.5.8代碼實現(xiàn)母版頁中有登錄框,和登錄注銷按鈕,以及用來綁定圖書類別信息的Repeater控件,所以我們首要介紹.NET身份驗證以及Repeater控件應用的相關知識。1相關知識一: Forms 身份驗證憑據FormsAuthentication 類: 為 Web 應用程序管理 Forms 身份驗證服務,用于在登錄時驗證用戶的 Forms 身份驗證憑據,
31、可以存儲在外部數(shù)據源中,也可以存儲在應用程序的配置文件中。可通過將 authentication 配置元素的 mode 屬性設置為 Forms 來啟用 Forms 身份驗證。通過使用 authorization 配置元素可要求所有對應用程序的請求均需包含有效的用戶身份驗證票證,從而拒絕任何未知用戶的請求。本項目在web.config文件中將 authentication 配置元素的 mode 屬性設置為 Forms 來啟用 Forms 身份驗證的代碼:在本項目中設身份驗證的默認頁面為首頁Default.aspx,由于網站前臺頁面允許匿名用戶瀏覽圖書信息,所以將保護protection屬性設為N
32、one,對需要身份驗證后才能訪問的頁面如購物車訂單頁面、修改會員個人資料頁面等,采用增加location配置節(jié)來實現(xiàn)要求用戶請求需包含有效的用戶身份驗證票證,從而拒絕任何未知用戶的請求,在Web.config文件的配置節(jié)中增加如下代碼 /拒絕任何未知用戶的請求 2.相關知識二: ASP.NET 成員資格.NET為您提供了一種驗證和存儲用戶憑據的內置方法-ASP.NET 成員資格,它可幫助您管理網站中的用戶身份驗證。ASP.NET 成員資格支持下列功能:創(chuàng)建新用戶和密碼。將成員資格信息(用戶名、密碼和支持數(shù)據)存儲在 Microsoft SQL Server、Active Directory 或
33、其他數(shù)據存儲區(qū)。對訪問站點的用戶進行身份驗證??梢砸跃幊谭绞津炞C用戶,也可以使用 ASP.NET 登錄控件創(chuàng)建一個只需很少代碼或無需代碼的完整身份驗證系統(tǒng)。管理密碼,包括創(chuàng)建、更改和重置密碼。根據您選擇的成員資格選項不同,成員資格系統(tǒng)還可以提供一個使用用戶提供的問題和答案的自動密碼重置系統(tǒng)。公開經過身份驗證的用戶的唯一標識,您可以在您自己的應用程序中使用該標識,也可以將該標識與 ASP.NET 個性化設置和角色管理(授權)系統(tǒng)集成。指定自定義成員資格提供程序,這使您可以改為用自己的代碼管理成員資格及在自定義數(shù)據存儲區(qū)中維護成員資格數(shù)據FormsAuthentication 類與Membersh
34、ip 類在MasterPage.master.cs中的應用/用戶登錄 protected void ibtnLogin_Click(object sender, ImageClickEventArgs e) if (Membership.ValidateUser(txtUserName.Text, txtPassword.Text) FormsAuthentication.RedirectFromLoginPage(txtUserName.Text,false); /登錄注銷 protected void logout_Click(object sender, EventArgs e) For
35、msAuthentication.SignOut(); Response.Redirect(Default.aspx); 成員資格信息(用戶名、密碼和支持數(shù)據)存儲位置.NET Framework默認的成員資格提供程序為AspNetSqlProvider,它將用戶信息存儲在.NET自帶的SQL數(shù)據庫ASPNETDB.MDF中,如果我們要把用戶信息存儲在我們自定義的SQL數(shù)據庫中,則需要在web.config文件配置節(jié)中進行如下配置: 除此之外,還要運行ASP.NET SQL Server安裝向導-aspnet_regsql.exe,該工具所在的路徑為c:WINDOWS Microsoft.NE
36、TFrameworkv2.0.50727,在我們自定義的數(shù)據庫中創(chuàng)建成員資格的數(shù)據表和存儲過程等。圖1-37 ASP.NET SQL Server安裝向導1.5.9為網站Web設置主題主題是屬性設置的集合可以用來定義頁面和控件的外觀,您可以定義單個 Web 應用程序的主題,也可以定義供 Web 服務器上的所有應用程序使用的全局主題。定義主題之后,可以使用 Page 指令的 Theme 或 StyleSheetTheme 屬性將該主題放置在個別頁上;或者通過設置應用程序配置文件中的 pages 元素(ASP.NET 設置架構) 元素,將其應用于應用程序中的所有頁。如果在 Machine.conf
37、ig 文件中定義了 pages 元素(ASP.NET 設置架構) 元素,主題將應用于服務器上的 Web 應用程序中的所有頁。主題由外觀、級聯(lián)樣式表 (CSS)、圖像和其他資源元素組成,一個主題至少要包含外觀文件。外觀文件的文件擴展名為 .skin,它用來定義頁面中服務器控件的外觀。級聯(lián)樣式表擴展名為.css,CSS是Cascading Style Sheets(層疊樣式表)的簡稱。在標準網頁設計中用來負責網頁內容(XHTML)的表現(xiàn).主題還可以包含圖形和其他資源,比如腳本文件或聲音文件。圖1-39 外觀文件及樣式文件SkinFile.skin文件代碼示例: 在上面的外觀文件中,為HyperLi
38、nk控件和Label控件設置了外觀,這種設置屬于“默認外觀”,也就是說這兩種控件的外觀適用于應用本主題的頁面上的所有的HyperLink控件和Label控件。如果要想為應用程序中同一類型的控件的不同實例應用不同的外觀,就要設置“已命名外觀”,要在外觀文件中為設置的控件指定“SkinID”屬性: 已命名外觀不會自動適用于同類型的所有控件,而是在應用主題的頁面控件上通過設置該控件的SkinID屬性(如SkinID=”hlDiff”)將已命名外觀應用于控件。應用主題本項目中所有的網頁均應用同一主題,這需要如下設置web.config文件中的 pages 配置節(jié)。如果只是在單個頁面應用主題,那需要在該
39、頁的頁面頭部的中做如下設置1.5.10創(chuàng)建站點地圖在解決方案資源管理器中右擊網站Web,選擇“添加新項”,在彈出的對話框的模板窗格中選擇“站點地圖”。代碼清單如下: 1.6前臺圖書信息瀏覽、檢索實現(xiàn) 1.6.1任務名稱:前臺圖書信息瀏覽、檢索實現(xiàn)1.6.2任務描述此模塊使用網站的訪問者可以匿名瀏覽圖書概要信息、圖書詳情信息,或者進行圖書檢索。前臺圖書信息瀏覽、檢索實現(xiàn)包括以下幾個方面:1首頁對圖書信息分三個欄目進行顯示,這三個欄目分別是:新書上架、熱點推薦、經典書目2可以按照欄目或圖書類別查看圖書概要信息3查看圖書詳情信息4設置復合條件完成圖書檢索1.6.3任務分析(一)首頁對圖書信息分新書上
40、架、熱點推薦、經典書目三個欄目進行顯示,按照圖書的添加時間排序,分別顯示前四位圖書,按三個欄目顯示圖書的差別只是欄目條件不同,這也就意味著對不同欄目的前四位圖書的顯示要重復三次,我們是將絕大部分雷同的代碼復制粘貼三次,還是定義一個用戶控件調用三次,顯然應該選擇后者。(二)可以按照欄目或圖書類別查看圖書概要信息,如前面所述按三個欄目顯示圖書的差別只是欄目條件不同,同理,按圖書類別顯示圖書只是類別編號不同。在完成任務時數(shù)據源我們使用SqlDataSoruce控件,如果我們將不同的查詢條件定義成參數(shù),使用時傳不同的值過去,就會非常靈活的實現(xiàn)按照欄目或圖書類別查看圖書概要信息,實際上我們是通過定義一個
41、存儲過程來幫助實現(xiàn)該功能。(三)復合條件查詢的關鍵是按照用戶選定的條件動態(tài)生成SQL語句,我們在公共類類庫中編寫SqlStringConstructor類來完成對SQL語句的構造。1.6.4首頁分欄目顯示圖書信息1效果圖2 Default.aspx頁面中主要控件及其用途控件類型控件名稱用途DlBook.ascxDlBook顯示“新書上架”欄目信息DlHot顯示“熱點推薦”欄目信息DlClassic顯示“經典書目”欄目信息SqlDataSourceSqldsBook“新書上架”數(shù)據源SqldsHot“熱點推薦”數(shù)據源SqldsClassic“經典書目”數(shù)據源表1-32 Default.aspx頁面中主要控件及其用途 3相關知識:使用Web用戶控件顯示欄目圖書
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年油基型密封膠合作協(xié)議書
- 人教版 八年級英語下冊 Unit 6 單元綜合測試卷(2025年春)
- 部編版小學六年級語文(上冊)第三單元集體備課發(fā)言稿
- 2025年個人律師見證委托合同范文(2篇)
- 山西省2024七年級道德與法治上冊第四單元追求美好人生第十一課確立人生目標情境基礎小練新人教版
- 2025年買狗簽合同格式版(2篇)
- 2025年九年級班主任年終個人教學工作總結范例(三篇)
- 2025年二年級班主任個人總結例文(3篇)
- 2025年二級域名合作協(xié)議簡單版(4篇)
- 房屋美化施工合同范例
- 2024年黑龍江農業(yè)職業(yè)技術學院高職單招(英語/數(shù)學/語文)筆試歷年參考題庫含答案解析
- 部編版小學語文四年級下冊教師教學用書(教學參考)完整版
- 基于數(shù)據驅動的鋰離子電池剩余使用壽命預測方法研究
- 《內臟疾病康復》課件
- 串通招投標法律問題研究
- 高原鐵路建設衛(wèi)生保障
- 家具廠各崗位責任制匯編
- 顳下頜關節(jié)盤復位固定術后護理查房
- 硝苯地平控釋片
- 部編版語文六年級下冊全套單元基礎??紲y試卷含答案
- 提高檢驗標本合格率品管圈PDCA成果匯報
評論
0/150
提交評論