public static void Completed(IAsyncResult result) { //获取委托对象,调用EndInvoke方法获取运行结果 AsyncResult _result = (AsyncResult)result; AsyncSendEventHandler myDelegate = (AsyncSendEventHandler)_result.AsyncDelegate; myDelegate.EndInvoke(_result); }
void objTimer_Elapsed(object sender, ElapsedEventArgs e) //这个方法内实现你想做的事情。 { #region 查询分销商验证同步日志表, 发送失败(失败次数小于3次)记录中的前10条(正序),重新发送验证请求 List <Agent_asyncsendlog> loglist = new Agent_asyncsendlogData().GetTop10SendFail(); if (loglist != null) { if (loglist.Count > 0) { foreach (Agent_asyncsendlog log in loglist) { AsyncSendEventHandler mydelegate = new AsyncSendEventHandler(AsyncSend); mydelegate.BeginInvoke(log, new AsyncCallback(Completed), null); } } } #endregion #region 超时12小时自动解除 顾问锁定用户 var channlelock = new MemberChannelData().WxMessageUnLockUserTimeout(); #endregion #region 定时执行:1.凌晨1点0分-1点10分 之间执行一次(过期产品应该自动下线状态。); 2.商户 每天生成一个随机码 int intHour = DateTime.Now.Hour; int intMinute = DateTime.Now.Minute; if (intHour == 1 && intMinute < 10) { #region 过期产品应该自动下线状态 ProductJsonData.ProAutoDownLine(); #endregion #region 商户 每天生成一个随机码 int onlineCompanyCount = 0; List <B2b_company> b2bcompanylist = new B2bCompanyData().GetAllCompanys("1", out onlineCompanyCount); foreach (B2b_company cominfo in b2bcompanylist) { if (cominfo != null) { //得到商户当天的 随机码 new B2bCompanyData().GetComDayRandomstr(cominfo.ID, "999999999"); } } #endregion } #endregion #region 超时(时限:30分钟)订单自动作废 try { //查询出含有超时订单的产品 List <B2b_com_pro> timeoutorderprolist = new B2bOrderData().GetTimeoutOrderProlist(); if (timeoutorderprolist.Count > 0) { foreach (B2b_com_pro mpro in timeoutorderprolist) { //作废超时未支付订单,完成回滚操作 int rs = new B2bComProData().CancelOvertimeOrder(mpro); } } } catch { } #endregion #region (暂时未应用)联合查询短信日志表和订单表,查出订单状态成功(4发码成功;22已处理),但是发码失败(1未发送;3发送中)的前5条订单,重新发送二维码短信 //List<B2b_smsmobilesend> smsloglist = new B2bSmsMobileSendDate().GetTop5SendFail(); //if (loglist != null) //{ // if (loglist.Count > 0) // { // foreach (B2b_smsmobilesend msmslog in smsloglist) // { // Asyncsendsms2EventHandler mydelegate2 = new Asyncsendsms2EventHandler(AsyncSendSms); // mydelegate2.BeginInvoke(msmslog, new AsyncCallback(CompletedSendSms), null); // } // } //} ////ExcelSqlHelper.ExecuteNonQuery("insert into test (retstr,pno) values('" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "','')"); #endregion }