Smobiler 关于缓存状态的问题

在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.效果

  

  

  

  关闭该窗口,重新打开

  

猜你喜欢

转载自www.cnblogs.com/carrot-z/p/9237863.html