private IEnumerable <DeviceStateLogRecord> getDeviceStateLog(SqlCommandText whereClause) { var records = new List <DeviceStateLogRecord>(); var selectCommand = new SqlCommandInfo( "SELECT" + " switch_datetime," + " device," + " state" + " FROM DeviceStateLog" + (whereClause.IsEmpty ? string.Empty : " WHERE " + whereClause.CommandText) + " ORDER BY switch_datetime DESC"); selectCommand.AddParameters(whereClause); SqlExecutionHelper.ExecuteReader( selectCommand, row => { DateTime datetime = row.GetDateTime(row.GetOrdinal("switch_datetime")); var device = (Devices)row.GetInt16(row.GetOrdinal("device")); var state = (DeviceStates)row.GetInt16(row.GetOrdinal("state")); records.Add(new DeviceStateLogRecord(datetime, device, state)); }); return(records); }
private IEnumerable <TemperatureLogRecord> getTemperatureChartData(SqlCommandText whereClause) { var data = new List <TemperatureLogRecord>(); var selectCommand = new SqlCommandInfo("SELECT origin_datetime, temperature FROM TemperatureLog"); if (!whereClause.IsEmpty) { selectCommand.CommandText += " WHERE " + whereClause.CommandText; selectCommand.AddParameters(whereClause); } SqlExecutionHelper.ExecuteReader( selectCommand, row => { DateTime datetime = row.GetDateTime(row.GetOrdinal("origin_datetime")); decimal temperature = row.GetDecimal(row.GetOrdinal("temperature")); data.Add(new TemperatureLogRecord(datetime, temperature)); }); return(data.ToArray()); }