/// <summary> /// Converts the given list of objects into CSV format. /// </summary> /// <typeparam name="T">The object type.</typeparam> /// <param name="data">The data.</param> /// <returns>The CSV representation of the given objects.</returns> public string ToCsv <T>(IList <T> data) { var properties = GetCleanObjectProperties(data.First()); var generator = new CsvGenerator().AddHeaders(properties); foreach (var item in data) { var values = properties.Select( property => item.GetType().GetProperty(property)?.GetValue(item).ToString()) .ToList(); generator.CreateRow(values, false); } return(generator.ToString()); }