I have a list of countries. I'd like to sort it alphabetically, except for two countries which I'd like to put first. Is there a simple way to modify
from country in Countries
orderby country.Name
select country
to accomplish this?
解决方案
Try this:
var specialCountries = new[] { "America", "England" };
from country in Countries
orderby specialCountries.Contains(country.Name) descending, country.Name
select country
If this isn't LINQ-to-Objects, you might need to write it slightly differently for it to work, e.g. this might work
from country in Countries
orderby (country.Name == "America" || country.Name == "England") descending, country.Name
select country