У меня вопрос о том, как отсортировать анонимный тип.
Использование Linq2SQL У меня есть следующий запрос, который возвращает список представлений:
var submissions = EventSubmissions
.Where(s => s.EventId.Equals(eventId));
Рассмотрим следующий интерфейс (несколько упрощенно):
public interface IQuerySorter
{
IOrderedQueryable Sort(IQueryable query);
IOrderedQueryable<T> Sort<T, U>(IQueryable<T> query, Expression<Func<T,U>> selector);
...
}
Использование этого интерфейса позволяет мне реализовать несколько «сортировщиков», например, Дата, рейтинг или то, была ли заявка выдвинута (для голосования).
sortedQuery = sorter.Sort(submissions)
Пока все хорошо. Представление может быть сделано «голосуемым». Я получаю количество голосов, которое может иметь заявка, используя следующий запрос:
var withVoteCount = submissions
.Select(s => new {NumberOfVotes = s.Votes.Count(), Submission = s});
Я бы хотел отсортировать этот новый запрос по NumberOfVotes, используя мой "общий" класс сортировщика, но столкнулся с проблемой, заключающейся в том, что анонимный тип / член, по-видимому, не находится вне метода репозитория, поэтому я не могу выполнить это.
Любая информация будет принята с благодарностью.