Exemplo n.º 1
0
        public void AddFailedRecord(ref FailedRecord record)
        {
            var sql = $"INSERT INTO FailedDownloads(DateCreated, DateUpdated, DownloadId, Download, Retried) VALUES ('{DateTime.Now}', '{DateTime.Now}', '{record.Download.Id}', '{record.DownloadString.Replace("\'", "\"")}', '{record.Retried}')";
            var id  = TransactNonQuery(sql, (command) =>
            {
                command.ExecuteNonQuery();

                return(command.Connection.LastInsertRowId);
            });

            record.ID = id;
            GetFailedDownloads();
        }
Exemplo n.º 2
0
 /// <summary>
 /// 添加发送失败的消息记录,并开启该线程
 /// </summary>
 /// <param name="record">消息记录</param>
 public void Add(NotifyRecord record, DateTime failedRequestTime)
 {
     if (record == null)
     {
         return;
     }
     lock (_recordLocker)
     {
         if (_records.ContainsKey(record.Id))
         {
             return;
         }
         var failedRecord = new FailedRecord
         {
             Record    = record,
             Times     = 1,
             Container = this,
             LastTime  = failedRequestTime
         };
         _records.Add(record.Id, failedRecord);
         failedRecord.Start();
     }
 }
Exemplo n.º 3
0
 /// <summary>
 /// 将记录从字典中移除
 /// </summary>
 /// <param name="record">失败的消息记录</param>
 private void Remove(FailedRecord record)
 {
     _records.Remove(record.Record.Id);
 }