Поиск в веб-службе Sharepoint: указание количества возвращаемых результатов - PullRequest
1 голос
/ 26 августа 2010

Я провел последние несколько дней в школе сильных ударов, изучая, как искать Sharepoint через веб-сервис http://{servername}/_vti_bin/spsearch.asmx.

Осталось решить проблему, когдаЯ выполняю поиск, возвращаются только первые 10 результатов.В возвращенном XML я вижу:

<StartAt>1</StartAt>
<Count>10</Count>
<TotalAvailable>42</TotalAvailable>

Итак, я вижу, что всего 42 результата, но я получаю только первые 10 результатов.

Запрос Iперехожу к методу Query () веб-службы:

<?xml version='1.0' encoding='utf-8' ?><QueryPacket xmlns='urn:Microsoft.Search.Query' Revision='1000'><Query domain='QDomain'><SupportedFormats><Format>urn:Microsoft.Search.Response.Document.Document</Format></SupportedFormats><Context><QueryText language='en-US' type='STRING'>{0}</QueryText></Context></Query></QueryPacket>

Как я могу изменить свой запрос, чтобы он возвращал все результаты сразу?

Ответы [ 2 ]

1 голос
/ 26 августа 2010

Вы должны указать поиску, сколько результатов вы хотите.Вы можете просмотреть схему поискового запроса на MSDN .Соответствующий раздел для вас:

<Range>
   <StartAt />
   <Count />
</Range>

Вам понадобится что-то вроде следующего в вашем теге

<Range>
   <StartAt>0</StartAt>
   <Count>50</Count>
</Range>

(вам, вероятно, не нужен StartAt, поскольку по умолчанию он равен 0)

0 голосов
/ 26 августа 2010
<QueryPacket xmlns="urn:Microsoft.Search.Query" Revision="1000">
      <Query domain="QDomain">
            <SupportedFormats>
                  <Format>urn:Microsoft.Search.Response.Document.Document</Format>
            </SupportedFormats>
            <Range>
                  <Count>MaxNumberGoesHere</Count>
            </Range>
            <Context>
                  <QueryText language="en-US" type="STRING">Maria</QueryText>
            </Context>
      </Query>
</QueryPacket>

Я думал, что попробовал это раньше и получил ошибку, поэтому я спрашивал здесь. Похоже, я неправильно понял запрос.

...