1. 程式人生 > >C#:System.Web.Caching.Cache快取的用法

C#:System.Web.Caching.Cache快取的用法

1.首先專案新增引用,新增程式集   System.Web;

2.程式碼引用名稱空間   using  System.Web;

3.使用方法如下,看程式碼:

假設已經進入了程式中,要進行密碼驗證。

private void 密碼驗證() {
            System.Web.Caching.Cache cache = HttpRuntime.Cache;
            //查詢 key = "yzm"  的快取,不存在則返回null
            object yzm = cache["yzm"];
            if (yzm == null) {
                MessageBox.Show("快取已失效,請重新輸入密碼", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                //快取重新賦值
                yzm = Interaction.InputBox("請輸入密碼...","密碼","",-1,-1);
                //寫入快取key  (不管如何,程式退出後,快取都會失效)
                //預設,程式退出才到期
                cache.Insert("yzm",yzm);
                //1分鐘到期
                //cache.Insert("yzm", yzm ,null,DateTime.Now.AddSeconds(60),System.Web.Caching.Cache.NoSlidingExpiration);
                //超過一分鐘沒使用就到期
                //cache.Insert("yzm", yzm ,null,System.Web.Caching.Cache.NoAbsoluteExpiration,TimeSpan.FromSeconds(60));
            }
            String mm = yzm as String;
            if (mm.Equals("123")) {
                MessageBox.Show("密碼正確");
            }
            else {
                MessageBox.Show("密碼不正確");
            }
            

        }

 //彈出密碼,檢視密碼快取是否到期
        private void button1_Click(object sender, EventArgs e) {
            System.Web.Caching.Cache cache = HttpRuntime.Cache;
            object mm = cache["yzm"];
            if (mm != null) {
                String s = mm as String;
                MessageBox.Show(s);
            }
            else {
                MessageBox.Show("密碼已過期!");
            }
        }