public MachineRecord GetFirstInMonth(string serial_number, DateTime month) { MachineRecord record = null; if (string.IsNullOrEmpty(serial_number) == false) { var collection = _database.GetCollection <MachineRecord>(Collections.machine_records.ToString()); var filter = Builders <MachineRecord> .Filter.Gte(e => e.datetime, month) & Builders <MachineRecord> .Filter.Eq(e => e.serial_number, serial_number); record = collection.Find(filter).FirstOrDefault(); record?.InitValues(); } return(record); }
public MachineRecord GetLatestForDevice(string serial_number) { MachineRecord record = null; if (serial_number != null) { var collection = _database.GetCollection <MachineRecord>(Collections.machine_records.ToString()); var sort = Builders <MachineRecord> .Sort.Descending(e => e.datetime); var filter = Builders <MachineRecord> .Filter.Eq(e => e.serial_number, serial_number); record = collection.Find <MachineRecord>(filter)?.Sort(sort)?.FirstOrDefault(); record?.InitValues(); } return(record); }