Example #1
0
        /// <inheritdoc />
        public IEnumerable <string> GetData <TRow, TName>(IFormattableReport <TRow, TName> report, TRow row)
        {
            foreach (var propName in report.Properties)
            {
                switch (report.GetValue(propName, row))
                {
                case DateTime day:
                    yield return(day.ToString("dd-MM-yyyy"));

                    break;

                case Metrics metrics:
                    foreach (var data in GetMetricsData(metrics))
                    {
                        yield return(data);
                    }

                    break;

                case double doubleValue:
                    yield return(propName switch
                    {
                        "Rt" => doubleValue.ToString("00.00000000", CultureInfo.InvariantCulture),
                        "TTR" => doubleValue.ToString("###########0", CultureInfo.InvariantCulture),
                        _ => throw new ArgumentException($"Unsupported formatter for property value. Property - {propName}; Value - {doubleValue}")
                    });

                    break;