using System.Collections.Generic;
Small = 1, Medium = 3, Large = 5,
public Animal(bool isCarnivore, AnimalSize size)
this.IsCarnivore = isCarnivore;
public static void Main()
AnimalSize[] orderBy = new[]
var sampleData = new List<Animal>
new Animal(false, AnimalSize.Small),
new Animal(false, AnimalSize.Large),
new Animal(false, AnimalSize.Medium)
var results = sampleData.OrderBy( a => Array.IndexOf(orderBy, a.Size ) );
foreach (var a in results)
Console.WriteLine(a.Size);