購物車原則上是足夠簡單的控件但直到ASPNET 它仍然是很難創建的特性原因非常簡單如何記住哪些商品存儲在購物車中?快速的答案是狀態然而狀態管理沒有想像的那麼簡單直觀第章將更為詳細地介紹會話和狀態但在這兒需要簡要討論它
這不是新的特性並且公平地說在本書中它一直隱藏在後台因為每個頁面都包含ViewState控件該控件包含每個頁面的控件內容的加密版本然而這一點與Internet是無狀態的實際情況不符合因此每次在頁面之間移動時Web服務的行動類似於金魚都問相同的問題你是誰?因此必須讓Web服務器記住自己
前面在ASPNET 中可以通過兩種方法中的一種記住購物車中的商品可以創建購物車並將購物車的整個內容粘貼在Session對象中並且在每次某個人注銷並再次登錄時丟失該列表或者作為選擇可以在數據庫中創建購物車項然後依賴於每次向購物車添加商品時更新數據庫第二種方法的優點當然是如果在開始重新登錄時突然丟失Internet連接將仍然具有購物車的內容如果只花費一個小時時間來整理每周的商店只有不得不忍受這個關鍵點處ISP的ooi%停機時間則這個方法非常有用當然第一種方法可以利用cookie從而如果再次登錄它可以鏈接回購物車但這將依賴於整個成員關系系統從而可以看到漂亮的小型的購物車如何突然成為較大的更為復雜的購物車和成員關系系統
ASPNET 能夠利用兩種方法中的一些優點(記住連接之間的狀態)同時留下一些笨拙的方面(經常的數據庫訪問在可以使用購物車之前需要作為成員登錄)通過利用新的配置文件特性來做到這一點第章中介紹了這種新的配置文件特性將會看到在開始構建購物車控件時如何使用這種特性然而首先需要構建對象使用該對象組成購物車存儲內容的基礎
ASPNET 入門教程完整版
From:http://tw.wingwit.com/Article/program/net/201311/15663.html