winform定时任务

   #region 定时任务获取用户信息入库
   public void InitializeTimer()
   {
       // 创建一个定时器,每10秒触发一次
       _timer = new System.Threading.Timer(OnTimedEvent, null, 0, 10000); // 立即开始,然后每10秒触发一次
   }
   private void OnTimedEvent(object state)
   {
       if (isTimerRun)
       {
           // 定时任务的代码
           GetUserInfo();
       }
   }
   /// <summary>
   /// 获取用户信息并存入数据库
   /// </summary>
   public void GetUserInfo()
   {
       isTimerRun = false;
       try
       {
           var redisYHServer = RedisServer.GetInstance(0);
           var dm = redisYHServer.ListGet<YZ_BaseModel>("TCZYBModel");
           if (dm != null && dm.Count() > 0)
           {

               foreach (var item in dm)
               {
                   YZ.TCZYBModel tCZYB = new YZ.TCZYBModel();
                   tCZYB = JsonHelper.DeserializeJsonToObject<YZ.TCZYBModel>(JsonHelper.SerializeObject(item.Data));
                   var info = new Model.TCZYBModel()
                   {
                       Head = tCZYB.Head,
                       CZYDM = tCZYB.CZYDM,
                       CZYM = tCZYB.CZYM,
                       MM = tCZYB.MM,
                       CZYJB = tCZYB.CZYJB,
                       CJDM = tCZYB.CJDM,
                       BCDM = tCZYB.BCDM,
                       JSDM = tCZYB.JSDM,
                       PDAJS = tCZYB.PDAJS,
                       Tail = tCZYB.Tail
                   };
                   bll.UpdateData(info);
               }
               redisYHServer.StringRemove("TCZYBModel");
           }
           isTimerRun = true;
       }
       catch
       {
           isTimerRun = true;
       }

   }
   #endregion

 

posted @ 2025-09-09 09:17  x欣x  阅读(17)  评论(0)    收藏  举报