public async Task <DeviceServiceResponse> RegisterDevice(Device device) { if (String.IsNullOrEmpty(device.RegistrationDate)) { device.RegistrationDate = DateTime.UtcNow.ToString("s"); } await _dbContext.SaveAsync <Device>(device, default(System.Threading.CancellationToken)); Device deviceResponse = await _dbContext.LoadAsync <Device>(device.SerialNumber); //create a service object to hide the secret return(DeviceMapper.MapDevice(deviceResponse)); }
public async Task <DeviceServiceResponse> GetDeviceBySerialNumber(string serialNumber) { try { var device = await _dbContext.LoadAsync <Device>(serialNumber); if (device != null) { //create and map a service object to hide the device's secret return(DeviceMapper.MapDevice(device)); } } catch (Exception ex) { _logger.LogError(ex, string.Format("An error occured fetching device for serial number: {0}", serialNumber)); throw ex; } return(null); }