/// <summary> /// Create a list of Microsoft Band Accelerometer objects from the data read from the csv file selected by the user. /// </summary> /// <param name="csvReader">csv reader object</param> /// <param name="patientData">Patient data record that will be referenced by each microsoft band accel data record.</param> /// <param name="date">Date the data in the file was collected.</param> /// <returns></returns> public static List<MSBandAccelerometer> BuildMSBandAccelerometerDataList(CsvReader csvReader, PatientData patientData, DateTime date) { List<MSBandAccelerometer> msBandAccelData = null; if (csvReader != null && patientData != null && patientData.Id != null) { msBandAccelData = new List<MSBandAccelerometer>(); while (csvReader.ReadNextRecord()) { if (csvReader != null) { //File should read in the following order. //Time | Lateral | Vertical | Sagittal string dateFormat = "HH:mm:ss.fff"; string dateInfo = csvReader[0]; DateTime dateTime; if (DateTime.TryParseExact(dateInfo, dateFormat, CultureInfo.InvariantCulture, DateTimeStyles.None, out dateTime)) { date = new DateTime(date.Year, date.Month, date.Day, dateTime.Hour, dateTime.Minute, dateTime.Second, dateTime.Millisecond); MSBandAccelerometer msBandAccel = new MSBandAccelerometer() { Date = date, Lateral = (float)Convert.ToDouble(csvReader[1]), Vertical = (float)Convert.ToDouble(csvReader[2]), Sagittal = (float)Convert.ToDouble(csvReader[3]), PatientDataId = patientData.Id }; msBandAccelData.Add(msBandAccel); } } } } return msBandAccelData; }
/// <summary> /// Add a new Microsoft Band Accelerometer data record to the database /// </summary> /// <param name="msBandAccel">MSBandAccelerometer object to add to the database</param> public void CreateMSBandAccel(MSBandAccelerometer msBandAccel) { if(msBandAccel != null) { _repository.Add(msBandAccel); } }