Я делаю некоторые исследования для кого-то сегодня вокруг list.asmx веб-службы в рамках SharePoint 2010 (и более ранних версий). Она смогла получить элементы списка в корневой папке (включая имена подпапок), но не мог получить предметы в подпапки. Я сделал некоторые смотрю на Интернет, и это удивительно общий вопрос. Тем не менее, Я не мог получить хороший ответ на простой вопрос, «Если я знаю папки, как я могу получить элементы в папке?” Чтобы быть честным, Я не попробовал все, что трудно, так как я хотел рис, это один из моей какое-то время .
Чтобы задать этот вопрос, Я создал сайт под названием «Блогов сценариев» и собственный список с именем «Настраиваемого списка с вложенные папки». Затем я создал папки с именем:
- Год 2005
- Год 2006
- Год 2007
Я добавил несколько пунктов в папку «2006 год». Это, как он выглядит:
Мой друг не писать код C#, но скорее с использованием Java, так что конверт SOAP был то, что она действительно необходима. Чтобы получить, что, Я написал немного jQuery и затем используется для получения фактической HTTP разговора скрипача..
Вот соответствующие jQuery (Я скопировал код вниз ниже, если вы хотите копировать/вставить):
Они первый ключ должен включать как <queryOptions> и <QueryOptions> узел. Второй ключ заключается в том, что <Папка> узел — это адрес URL, к которому клиент имеет доступ.
Могут быть и другие способы получить эту, но это работает хорошо для меня, когда с помощью jQuery.
Вот конверт SOAP для выше:
<soapenv:Конверт xmlns:soapenv =’HTTP://schemas.xmlsoap.org/SOAP/envelope/’>
<soapenv:Тело>
<GetListItems xmlns =’HTTP://schemas.Microsoft.com/SharePoint/SOAP/’>
<listName>Настраиваемый список с вложенные папки</listName>
<viewFields>
<ViewFields>
<Имя FieldRef =' название’ />
<Имя FieldRef ='EncodedAbsUrl’ />
</ViewFields>
</viewFields>
<queryOptions>
<QueryOptions>
<Папка>HTTP://demoserver1/блоги Сценарии/списки/настраиваемый список с Sub папки/год 2006</Папка>
</QueryOptions>
</queryOptions>
</GetListItems>
</soapenv:Тело>
</soapenv:Конверт>
Много примеров и дискуссии вокруг этого привели меня к мнению, что все это мне нужно было <QueryOptions> и укажите имя папки. Для меня, Нужно обоим подводить его внутрь <queryOptions> а также укажите полный URL-адрес для <Папка> узел.
Вот настройки AJAX jQuery:
$(документ).готов(функция() {
var soapEnv =
"<soapenv:Конверт xmlns:soapenv =’HTTP://schemas.xmlsoap.org/SOAP/envelope/’> \
<soapenv:Тело> \
<GetListItems xmlns =’HTTP://schemas.Microsoft.com/SharePoint/SOAP/’> \
<listName>Настраиваемый список с вложенные папки</listName> \
<viewFields> \
<ViewFields> \
<Имя FieldRef =' название’ /> \
<Имя FieldRef ='EncodedAbsUrl’ /> \
</ViewFields> \
</viewFields> \
<queryOptions> \
<QueryOptions> \
<Папка>http://demoserver1/Blogging Сценарии/списки/настраиваемый список с Sub папки/год 2006</Папка> \
</QueryOptions> \
</queryOptions> \
</GetListItems> \
</soapenv:Тело> \
</soapenv:Конверт>";
</конец>
Следуй за мной по щебетать на http://www.twitter.com/pagalvin
Привет
Я пытаюсь для отображения документов в определенной папке с использованием SPD 2010 DataSource GetListItems
Однажды я подключиться к моей веб-службу и введите идентификатор guid для библиотеки документов
Я могу изменить QueryOptions и введите следующий фрагмент CAML
Соответствие TrainingCompanyX.
Только это не возвращает никаких результатов – Удаление параметра QueryOptions возвращает все документы в библиотеке документов корня….
Я глядя на прохождение некоторых вроде просмотра параметров и включают в себя представление guid.
Это очень старая так жалко никогда не отвечая комментарий пост. Я полагаю, вы долго с тех пор понял, как поступить.
Хорошая статья! Спасибо.
Можно также использовать параметр RecursiveAll автоматически пройти вниз структуры папок (на корневом уровне).
Хорошо, Похоже, что его раздели xml… просто замените знаки решетки ниже с шевронами.
#queryOptions #
#QueryOptions #
#Область ViewAttributes = «RecursiveAll» / #
#/QueryOptions #
#/queryOptions #
Благодаря кучу для этого поста, Пол. Я пытаюсь использовать GetListItems через ColdFusion cfhttp, и не мог получить конверт правильно. В конце концов наткнулся на этот пост, и ваш пример работал безупречно. Еще раз спасибо.
BTW – Вы знаете из ресурса, который перечисляет все конверты правильное мыло? Один для элементов GetList опубликованы на сайте microsoft.com не соответствует вы 're здесь…