Определить, был ли IQueryable упорядочен или нет

Есть ли способ узнать, был ли заказан IQueryable (используя OrderBy или OrderbyDescending)?

Так я узнаю, нужно ли вызывать OrderBy или ThenBy для коллекции.

IQueryable<Contact> contacts = Database.GetContacts();

Я пробовал contacts is IOrderedQueryable, но это всегда true.

Edit: Я просто изменил свой пример, предыдущий не очень хорошо показывал мою точку зрения. Предположим, что GetContacts использует Entity Framework и просто возвращает все записи таблицы.

Позже я применяю несколько функций к contacts, я не знаю, что делают эти функции. Они могут сортировать или фильтровать IQueryable.

Когда я получу коллекцию обратно, мне нужно будет отсортировать ее еще раз. Для этого мне нужно знать, нужно ли вызывать OrderBy или ThenBy. Поэтому я не переупорядочиваю всю коллекцию, если она уже была отсортирована.

25
задан Bertrand Marron 21 March 2013 в 08:11
поделиться