a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > C# > 正文

VB.NET中Caching的使用方法

2020-01-24 03:23:52
字體:
來源:轉載
供稿:網友

ASP.NET通過兩種方式支持緩存:通過Cache API存儲任意數據,通過頁面輸出緩存經常被訪問的頁面。讓我們來看一個例子。

一個電子商務的站點, 它的目錄一般一周更新一次。站點提供了一套用戶界面讓客戶訂購產品。當一個客戶瀏覽目錄時,系統將通過網絡去查詢數據庫,進行各種計算,最后返回結果。

從服務器查詢這些目錄數據的操作是很頻繁的。我們知道,這些數據一周才變化一次。所以以下的幾種操作將帶來性能上的損失。

1. 執行ASP.NET的程序生成對數據庫的查詢語句。
2. 通過網絡,和數據庫服務器進行通訊。
3. 數據庫服務器編譯執行查詢(或是執行儲存過程)。

緩存機制可以減少許多這樣的工作,提高應用的性能和伸縮性。我們能緩存結果以便能靜態的處理客戶請求,來提高性能。同時,由于減少了處理每個請求使用的資源,因此也提高了系統的伸縮性。

Cache API對于ASP開發人員來說,把常用的數據保存在內存里,并不是一個全新的概念。在ASP里,有兩個對象完成它。

Session 對象

Application 對象

Session用來保存單個用戶在多個請求間共享的數據,雖然在ASP.NET中有一些小的改動,但這些改動主要是在應用級的,對Session對象來說,仍然是一個保存鍵與鍵值對的集合。Application對象在ASP.NET也被保存下來了,同樣是鍵與鍵值對的集合。在ASP和ASP.NET中,我們都可以使用以下代碼來操作Application 對象

復制代碼 代碼如下:

Application("SomeInterestingData") = "Example data"
Response.Write(Application("SomeInterestingData")

我們可以使用同樣的方法訪問Session對象。

ASP.NET帶來了一個新的鍵與鍵值的對象―Cache.除了存儲鍵與鍵值對外,Cache對象還提供了另外的一些存儲短期數據的新功能:依賴―當一個鍵插入Cache對象時,我們可以設置它的依賴性。當依賴的對象改變時,這個鍵將被刪除。現在支持的依賴對象有文件,其他的鍵和時間。自動失效―沒有依賴的鍵值,當使用頻率不高時,將被自動刪除。支持回調―當一個鍵將被刪除時,我們可以得到一個事件,在這個事件中來更新鍵值或取消刪除操作。
當我們在使用Cache對象時,必須注意這一點:使用Cache對象中的鍵值之前,必須每一次都檢查鍵值是否存在。由于在Cache對象中的鍵值由于其依賴或者使用頻率較低,都會被刪除,所以,每一次使用Cache中的對象,都必須檢查是否存在。例如,我們可以用如下一段代碼來返回DataSet.

復制代碼 代碼如下:

Private Function LoadDataSet() As DataSet
Dim sqlConnection As SQLConnection
Dim sqlAdapater As SQLDataSetCommand
Dim datasetProducts As New DataSet()
Dim sqlDSN As String
Dim sqlSelect As String
" Connection String and Select statement
sqlDSN = "server=localhost;uid=sa;pwd=;database=grocertogo"
sqlSelect = "Select * From Products"
" Connect
sqlConnection = new SQLConnection(sqlDSN)
sqlAdapater = new SQLDataSetCommand(sqlSelect, sqlConnection)
" Fill dataset create product table
sqlAdapter1.FillDataSet(datasetProducts, "products")
Return products
End Function
我們很容易用Cache對象來改寫這段代碼,使只在DataSet不存在在Cache中才調用LoadDataSet()。
Public Function GetProductData() As DataSet
If (IsNothing(Cache("ProductData")) Then
Cache("ProductData") = LoadDataSet()
Return Cache("ProductData")
End Function

Cache對象在許多地方和Application對象有許多相似之處,而最大的不同是Cache支持了依賴。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 午夜私人福利 | 国产1页| 国产视频一区二区 | 大色欧美 | 亚洲女人天堂成人av在线 | 成人1区| 日本黄色免费观看 | 九九色综合| 成人不卡视频 | 国产精品一区二区三区99 | 日韩一区二区在线观看视频 | 久久久久久免费毛片精品 | 中文字幕亚洲视频 | 中文字幕不卡在线观看 | 欧美日韩一区二区三区在线观看 | 亚洲欧美91 | 可以免费观看的av | 日韩一级免费在线观看 | 91精品久久久久久久 | 久久中文字幕电影 | 一级黄色毛片子 | 国产乱老熟视频网88av | 国产成人在线免费观看 | 久久久久久99 | 色av综合网 | 欧产日产国产精品一二 | 中文字幕视频免费观看 | 亚洲av一级毛片 | 天天网 | 999视频在线 | 天天天天天天天天干 | 青青草在线免费观看 | 国内精品国产三级国产在线专 | 色综合中文 | 色噜噜噜噜 | 黄色片视频免费 | 精品久久久久久久 | 最新国产精品精品视频 | 色婷婷成人网 | 午夜看片 | 日本高清视频在线播放 |