using System.Collections.Generic;
private static IEnumerable<DriverDetailsSourceObject> DriverDetails { get; set; } = Enumerable.Empty<DriverDetailsSourceObject>();
private static IEnumerable<DriverDetailsView> DriverDetailsByOption { get; set; } = Enumerable.Empty<DriverDetailsView>();
public static void Main()
DriverDetails = new List<DriverDetailsSourceObject>
new DriverDetailsSourceObject { Name = "RoadAssistance A", GroupName = "Group A" },
new DriverDetailsSourceObject { Name = "RoadAssistance A", GroupName = "Group B" },
new DriverDetailsSourceObject { Name = "RoadAssistance A", GroupName = "Group B" },
new DriverDetailsSourceObject { Name = "RoadAssistance B", GroupName = "Group A" },
DriverDetailsByOption = DriverDetails.GroupBy(o => o.Name)
GroupName = String.Join(",", d.Select(x => x.GroupName).Distinct()),
FiddleHelper.WriteTable(DriverDetailsByOption);
public class DriverDetailsSourceObject
public string Name { get; set; }
public string GroupName { get; set; }
public DateTime DateOfPurchase { get; set; }
public int Count { get; set; } = 1;
public class DriverDetailsView
public string Name { get; set; }
public string GroupName { get; set; }
public DateTime DateOfPurchase { get; set; }
public int Count { get; set; } = 1;
public DriverDetailsView() { }
public DriverDetailsView(DriverDetailsSourceObject source)
GroupName = source.GroupName;
DateOfPurchase = source.DateOfPurchase;