1. 程式人生 > >Smobiler 關於緩存狀態的問題

Smobiler 關於緩存狀態的問題

對象 情況 ML 更新 數據庫查詢 註意 ace log 打開

在smobiler開發中,遇到了某些選擇狀態需要緩存的情況太多了,以此記錄下,不小心犯錯的過程。

一、一開始在smoONE(官方demo)-》frmLogon.cs 中了解到了緩存的做法

  技術分享圖片


技術分享圖片

二、在項目(A頁)中運用(例子:緩存日期選擇狀態 ,今日、昨日、本周、。。。)

  1.設置全局變量,來存儲需要緩存的內容

  技術分享圖片

  2.在Load事件中就要讀取是否存在緩存狀態,賦值給全局變量

   技術分享圖片

  3.在Bind綁定數據方法中,判斷是否有緩存(判斷全局變量即可),有就在數據庫查詢語句中加入相應的條件;反之,不用

  技術分享圖片

日期的sql 判斷 下一章詳細寫

註意:判斷全局變量的條件,要是if (string.IsNullOrWhiteSpace(Dtype) == false),如果換成 if (Dtype != “” || Dtype != null)

在用戶初次進入,或從未有過有效的選擇的情況下,仍然會加入選擇條件選擇,就會出現問題,如

  技術分享圖片

  4.在每次的狀態選擇後,全局變量、客戶端的數據更新一遍

  例子:日期選擇按鈕事件

  技術分享圖片

註意:黃色框框部分,如果不做判斷,直接寫成:string type =Dtype ; 就會出現下面的錯誤:未將對象引用設置到對象實例


技術分享圖片

  5.效果

  技術分享圖片

  技術分享圖片

  技術分享圖片

  關閉該窗口,重新打開

  技術分享圖片

Smobiler 關於緩存狀態的問題