using System.Collections.Generic;
public DateTime StopTime;
public override string ToString()
return $"{Seq}|{StopTime}|{RunStopId}|{Name}";
public static void Main()
Console.WriteLine("Hello World");
List<RunStop> runStops = new List<RunStop>();
runStops.Add(new RunStop()
StopTime = DateTime.Parse("1970-01-01 08:32:00.000"),
Name = "ROSE LN & SMILEY AV"
runStops.Add(new RunStop()
StopTime = DateTime.Parse("1970-01-01 08:33:00.000"),
Name = "ROSE LN & CLOVERDALE AV"
runStops.Add(new RunStop()
StopTime = DateTime.Parse("1900-01-01 08:55:00.000"),
IEnumerable<RunStop> newOrder = new List<RunStop>();
if (runStops.All(s => s.Seq.HasValue))
newOrder = runStops.OrderBy(s => s.Seq)
.ThenBy(s => s.StopTime.TimeOfDay)
.ThenBy(s => s.RunStopId);
newOrder = runStops.OrderBy(s => s.StopTime.TimeOfDay)
.ThenBy(s => s.RunStopId);
foreach(var stop in newOrder)
Console.WriteLine(stop.ToString());