/// <summary> /// Ritorna l'unità di misura del tempo da utilizzare nei grafici /// </summary> /// <param name="elapsed">trascorso medio</param> /// <returns>Unità di misura</returns> public static enMeasurement GetTimeMeasurement(long elapsed) { enMeasurement measurement = enMeasurement.Seconds; TimeSpan ElapsedDateTime = new TimeSpan(elapsed); if (ElapsedDateTime.TotalSeconds >= 0 && ElapsedDateTime.TotalMinutes < 1) { measurement = enMeasurement.Seconds; } else if (ElapsedDateTime.TotalMinutes >= 1 && ElapsedDateTime.TotalHours < 1) { measurement = enMeasurement.Minutes; } else if (ElapsedDateTime.TotalHours >= 1 && ElapsedDateTime.TotalDays < 1) { measurement = enMeasurement.Hours; } else if (ElapsedDateTime.TotalDays >= 1) { measurement = enMeasurement.Days; } return(measurement); }
/// <summary> /// Converte i valori di elapsed time in base all'unità di misura del tempo /// </summary> /// <param name="elapsedList"></param> /// <returns>Dati su unità di tempo</returns> public static List <int> ConvertElapsedByMeasurement(List <long> elapsedList, enMeasurement measurement) { List <double> result = new List <double>(); switch (measurement) { case enMeasurement.Seconds: result = elapsedList.Select(s => new TimeSpan(s).TotalSeconds).ToList(); break; case enMeasurement.Minutes: result = elapsedList.Select(s => new TimeSpan(s).TotalMinutes).ToList(); break; case enMeasurement.Hours: result = elapsedList.Select(s => new TimeSpan(s).TotalHours).ToList(); break; case enMeasurement.Days: result = elapsedList.Select(s => new TimeSpan(s).TotalDays).ToList(); break; default: break; } //return result.Select(s => s.RoundToInt()).ToList(); //is-1254 return(result.Select(s => (int)Math.Floor(s)).ToList()); }