I think this is a issue about case sensitivity.
replace
.OrderBy(i => i.StartsWith(queryValue)); with
.OrderByOrderByDescending(i => i.StartsWith(queryValue, StringComparison.InvariantCultureIgnoreCase)); because "Ready Set".StartsWith("read") will return false