У меня есть IQueryable. Я не называл OrderBy на нем или каким-то другим образом ничего не делал.
Если я это сделаю:
// for some reason, isItOrdered is always true
var isItOrdered = myQueryable is IOrderedQueryable<T>
Почему это всегда так? (Похоже, этого не должно быть.) И, что более важно, как я могу узнать, был ли уже заказан IQueryable? (т.е. действительно является IOrderedQueryable)
Я хотел бы сделать что-то вроде:
if (myQueryable is IOrderedQueryable<T>)
myQueryable = myQueryable.ThenBy(...);
else
myQueryable = myQueryable.OrderBy(...);