2014-09-16 2 views
2

В настоящее время в моем запросе я говорю orderby t.Description и я получаю:Сортировка заглавными буквами первые

1st street 
2 burritos 
Allergy 
Ameripath 
Application 
APK THD 

Как я могу изменить вид, чтобы получить это:

1st street 
2 burritos 
APK THD 
Allergy 
Ameripath 
Application 

Так теперь еще на но с заглавными буквами на первом месте

+2

Это должно помочь http://stackoverflow.com/questions/5328737/linq-and-case-sensitivity – DavidG

ответ

5

Необходимо заказать порядковый сопоставитель для метода OrderBy:

static void Main(string[] args) 
{ 
    var list = new[] {"1st street","2 burritos","Allergy","Ameripath","Application","APK THD"}; 
    list.OrderBy(x => x, StringComparer.Ordinal).ToList().ForEach(Console.WriteLine); 
} 
+0

Спасибо, что сделал бы это, за исключением одной проблемы: Прежде чем я верну свой результат запроса, я добавляю один элемент под названием «Показать все» в верхней части списка, но я не хочу, чтобы этот вопрос сортировался, я хочу, чтобы он все еще оставался наверху. Как я могу это сделать? В настоящее время он сортирует его, как и все остальные. – ConfusedSleepyDeveloper

+1

Вы должны добавить его после сортировки списка. Вы можете использовать list.Insert (0, «ShowAll»). – brz

Смежные вопросы