2009-08-19 3 views
1

У меня проблема, я пытаюсь использовать вспомогательный класс для проекта MVC. И я получаю ошибку, что я должен каким-то образом использовать OrderBy.Pagnation с LINQ для объектов

this.AddRange(source.Skip(PageIndex * PageSize).Take(PageSize)) 

Что делать? /M

ответ

1

EF ценен об этом (хотя LINQ-to-SQL позволит вам это сделать); просто добавить явное OrderBy:

source.OrderBy(x=>x.SomeId).Skip(PageIndex * PageSize).Take(PageSize) 

(или заказ по имени, или то, что имеет смысл)

+0

Проблема заключается в том, что его общий класс так он используется для различных «таблицы» с различными столбцами –

+0

Так что тип данных здесь? Вы используете дженерики или что-то еще? Насколько я вижу, у вас есть два выбора; закажите его «у источника», т. е. когда вы все еще знаете, что такое данные; или использовать отражение, чтобы идентифицировать ключ и создать свой собственный «Expression <...>' чему-то полезному. Я бы порекомендовал первый ... –

+0

nvm :) Я просто заказываю их раньше :) –

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