A.從XML中取數據:
分析:
var node=dom.DocumentElement.SelectSingleNode("//pagesize");
xpath寫法,如下表,詳見w3c: http://www.w3school.com.cn/xpath/xpath_nodes.asp
,這裏雙斜槓意爲:從匹配選擇的當前節點選擇文檔中的節點,而不考慮它們的位置
Cache 緩存對象和 Application類似,都是全局的
區別的地方是,當內存緊張時,首先Cache可能會丟失 ,然後是session
提出一個問題,緩存依賴;
1.絕對超時
2.相對超時
3.文件依賴
4.數據庫依賴:
兩種模式:輪詢,通知(必須是sql2005以上,啓動數據庫的通知服務)
=============
實戰中:
緩存大數據量,一般是數據集或集合等。
緩存通常沒有依賴,那麼我們做一個功能,叫清理緩存(刷新緩存)
緩存1 OK
緩存2 OK
緩存3 OK
緩存4 OK
【清理】
其實質就是直接把Cache["XXXX"]中的內容覆蓋一遍達到更新的作用
B.應用程序緩存的應用:Cache函數
Cache["cacheName"] = value; //最簡單的設置緩存的方法,這樣子設置的是永久緩存
以上這種方法如果碰到需要設置緩存的有效期,依賴項的時候就無能爲了,解決方法如下:
1.使用Add()方法
Cache.Add("test1","使用Add緩存測試",null,DateTime.Now.AddSeconds(7),
TimeSpan.Zero,CacheItemPriority.High,null);
使用Add()方法必須要將它的7個參數填寫完整,所以靈活性不夠
2.使用Insert()方法
a.只需要鍵和值2個參數就可以添加緩存
Cache.Insert("test2", "使用Insert緩存測試");
b.添加依賴項的緩存
Cache.Insert("test3", "使用依賴項的緩存",
new System.Web.Caching.CacheDependency(null,dependencies))
//這裏的dependencies是緩存的依賴項,當更改任何依賴項時,該隨想無效並從緩存中移除
c.設置有效期策略的緩存
Cache.Insert("test4","帶有效期的緩存",DateTime.Now.AddMinutes(1d),
System.Web.Caching.Cache.NoSlidingExpiration);
d.添加優先級的緩存
Cache.Insert("test5", "帶優先級的緩存", null,
System.Web.Caching.Cache.NoAbsoluteExpiration,
System.Web.Caching.Cache.NoAbsoluteExpiration,
System.Web.Caching.CacheItemPriority.High, null);
CacheDependency說明:
C.檢索緩存注意事項:
由於緩存易失,所以在從緩存中檢索應用程序的數據緩存對象時,需要先判斷是否爲null,然後再檢索。
D.移除緩存
1.自動移除:
當出現緩存已滿、過期、依賴項更改等情況時,緩存項會自動移除
2.顯式移除:
Cache.Remove("test1");