using System.Collections.Generic;
public string FileName { get; set; }
public DateTime LastModified { get; set; }
public int FileSizeInKB { get; set; }
public static void Main()
IList<ImageData> imageList = new List<ImageData>()
new ImageData() { FileName="Flower.Jpg", LastModified = DateTime.Parse("1/1/2022"), FileSizeInKB = 10} ,
new ImageData() { FileName="Flower.gif", LastModified = DateTime.Parse("1/1/2022"), FileSizeInKB = 500} ,
new ImageData() { FileName="Flower.bmp", LastModified = DateTime.Parse("1/1/2022"), FileSizeInKB = 200} ,
Console.WriteLine("OrderBy, ThenBy - Method Syntax\n -------------------------------" );
var result = imageList.OrderByDescending(s => s.LastModified).ThenByDescending(s => s.FileSizeInKB);
foreach (ImageData std in result)
Console.WriteLine(std.FileName + " - " + std.LastModified + " - " + std.FileSizeInKB);
var lastUpdated = imageList.OrderByDescending(s => s.LastModified).ThenByDescending(s => s.FileSizeInKB).FirstOrDefault();
Console.WriteLine("\n\nLast Modified Image\n______________________________________");
Console.WriteLine(lastUpdated.FileName + " - " + lastUpdated.LastModified + " - " + lastUpdated.FileSizeInKB);