2009-05-05 2 views
18

Я уже создал веб-страницу, чтобы отображать данные из списка, но я действительно хочу показать только 5 записей из этого списка (используя запрос CAML).SharePoint: Как получить Топ-5 записей с помощью запроса CAML из списка

Кто-нибудь знает, как это сделать? Большое спасибо.

<Query> 
    <OrderBy> 
     <FieldRef Name='ID' Ascending='False' /> 
    </OrderBy> 
</Query> 

ответ

23

Вы можете установить свойство RowLimit объекта SPQuery.

<RowLimit> тега в определении схемы в представлении (прямой потомок < View>) и, следовательно, не может быть вложенным внутри <Query> тега.

+0

спасибо. Это работает. –

+1

Если я использую этот запрос - 10 - Я получаю сообщение об ошибке «Есть несколько корневых элементов». Есть идеи? – NLV

+0

Не ставьте в запрос; объект SPQuery имеет отдельное свойство, называемое View, которое вам нужно использовать, а также RowLimit, если я правильно помню –

10

В приведенном ниже примере показаны первые 5 записей из списка (с использованием запроса CAML).

SPQuery spQuery = new SPQuery(); 
spQuery.Query = "<OrderBy><FieldRef Name='ID' Ascending='FALSE'/></OrderBy>"; 
spQuery.RowLimit = 5; 
0

Если вы хотите сконструировать другие простые запросы, попробуйте этот инструмент. http://www.camldesigner.com/

P.s. Инструмент не создает «paginate» запросы caml с SPListItemCollectionPosition.

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