using System.Collections.Generic;
public static void Main()
List<Student> studentList = new List<Student>() {
new Student() { StudentID = 1, StudentName = null, Age = null } ,
new Student() { StudentID = 2, StudentName = null, Age = null } ,
new Student() { StudentID = 3, StudentName = null, Age = null } ,
new Student() { StudentID = 4, StudentName = null , Age = null } ,
new Student() { StudentID = 5, StudentName = null , Age = "koe" }
var groupedResult = studentList.OrderByDescending(s => s.StudentName !=null && s.StudentName.Contains("Steve")).ThenByDescending(x=> x.Age !=null && x.Age.Contains("koe"));
foreach (var ageGroup in groupedResult)
Console.WriteLine("Student Name: {0}", ageGroup.StudentID);
public int StudentID { get; set; }
public string StudentName { get; set; }
public string Age { get; set; }