private void Excute(RecCommand command) { command.UpdateDateTime = DataUtil.ToDateString(DateTime.Now); string sql = string.Format(@"INSERT INTO IoTCommand (会话ID,服务类型, 操作类型,SensorID,PumpJZID,数据业务地址,预设值,最后更新时间,用户ID,状态,开始时间,结束时间,耗时,消息) VALUES ('{0}','{1}','{2}','{3}',{4},'{5}',{6},'{7}',{8},'{9}','{10}','{11}','{12}','{13}');", DataUtil.ToString(command.SessionID), DataUtil.ToString(command.ServerType), DataUtil.ToString(command.OperType), DataUtil.ToString(command.SensorID), DataUtil.ToInt(command.PumpJZID), DataUtil.ToString(command.FDBAddress), DataUtil.ToDouble(command.SetValue), DataUtil.ToDateString(command.UpdateDateTime), DataUtil.ToInt(command.UserID), DataUtil.ToString(command.State), DataUtil.ToDateString(command.BeginTime), DataUtil.ToDateString(command.EndTime), DataUtil.ToString(command.TimeConsuming), DataUtil.ToString(command.Message)); DBUtil.ExecuteNonQuery(sql, out string errMsg); if (!string.IsNullOrWhiteSpace(errMsg)) { TraceManagerForCommand.AppendErrMsg("命令记录器记录数据库失败" + errMsg); } }
public void Append(RecCommand data) { if (!IsRuning) { return; } if (queue.IsAddingCompleted) { return; } if (queue.Count > 4096) { TraceManagerForCommand.AppendErrMsg("命令记录器队列到达上限无法插入"); return; } queue.Add(data); }