Правев некои истражувања за некој денес целиот веб list.asmx услуги обезбедени како дел од SharePoint 2010 (и порано). Таа беше во можност да се добие листа предмети на папка (вклучувајќи ги имињата на под-папки), но не можеше да се добие ставки во под-папки. Јас не некои бараат околу за на Internets и тоа е изненадувачки заеднички прашање. Сепак,, Не можев да се добие добар одговор на едноставно прашање, "Ако знам дека папката, Како можам да добијам на ставки во папка?" Да бидам искрен, Не се обидов сето тоа тешко, бидејќи јас сум сакал да дознаам ова на моето за некое време .
Да го поставите на овој, Јас создаде сајт наречен "Блогирање сценарија" и обичај листа наречена "Сопствен Листа со под директориуми". Јас тогаш создаде директориуми именувани:
- Година 2005
- Година 2006
- Година 2007
Јас додадов неколку предмети во папката "Година 2006". Ова е она што изгледа како:
Мојот пријател не е пишување C # кодот туку со употреба на Java, па SOAP пликото беше она што таа навистина потребно. Да се добие дека, Напишав малку на jQuery и потоа се користи свирач да го добиете вистинскиот за HTTP разговор.
Тука е релевантен jQuery (Јас копирани го кодот долу, ако сакате да направите копирај / вметни):
Тие прво Клучот е да го вклучите двете <queryOptions> и <QueryOptions> јазол. Вториот клучен е дека <Папка> јазол е URL-то на кој клиентот има пристап.
Може да има други начини да се добие оваа, но тоа добро работеа за мене, кога со користење на веб.
Тука е SOAP плико за горенаведените:
<soapenv:Плик xmlns:soapenv =’HTTP://schemas.xmlsoap.org / сапун / плик /’>
<soapenv:Тело>
<GetListItems xmlns =’HTTP://schemas.microsoft.com / SharePoint / сапун /’>
<listName>Прилагодено Листа со под директориуми</listName>
<viewFields>
<ViewFields>
<FieldRef Име = "Наслов’ />
<FieldRef Име = "EncodedAbsUrl’ />
</ViewFields>
</viewFields>
<queryOptions>
<QueryOptions>
<Папка>HTTP://demoserver1/Blogging Сценарија / листите / прилагодување по желба Листа со под директориуми / 2006 година</Папка>
</QueryOptions>
</queryOptions>
</GetListItems>
</soapenv:Тело>
</soapenv:Плик>
А многу примери и дискусија околу ова ме натера да верувам дека сè што ми треба е <QueryOptions> и наведете име за папката. За мене, Ми треба да и ставете го во <queryOptions> како и да определи целосно квалификувани URL за <Папка> јазол.
Тука е jQuery AJAX подесување:
$(документ).подготвени(функција() {
var soapEnv =
"<soapenv:Плик xmlns:soapenv =’HTTP://schemas.xmlsoap.org / сапун / плик /’> \
<soapenv:Тело> \
<GetListItems xmlns =’HTTP://schemas.microsoft.com / SharePoint / сапун /’> \
<listName>Прилагодено Листа со под директориуми</listName> \
<viewFields> \
<ViewFields> \
<FieldRef Име = "Наслов’ /> \
<FieldRef Име = "EncodedAbsUrl’ /> \
</ViewFields> \
</viewFields> \
<queryOptions> \
<QueryOptions> \
<Папка>http://demoserver1/Blogging Сценарија / листите / прилагодување по желба Листа со под директориуми / 2006 година</Папка> \
</QueryOptions> \
</queryOptions> \
</GetListItems> \
</soapenv:Тело> \
</soapenv:Плик>";
</крајот>
Да се претплатите на мојот блог.
Следете ме на Twitter во http://www.twitter.com/pagalvin
Hi
I am trying to display the documents under a specific folder using a SPD 2010 DataSource GetListItems
Once I connect to to my web service and enter the guid for the document library
I can modify the QueryOptions and enter the following piece of CAML
Compliance Training\CompanyX.
Only this does not return any results – removing the QueryOptions parameter returns all the documents in the root document library….
Am I looking at passing some sort of view parameter and include the view guid.
This is a very old post/comment so sorry for never replying. I assume you long since figured out how to proceed.
Good article! Благодарение.
You can also use the RecursiveAll option to automatically traverse down the folder structure (from the root level).
Ok, looks like it stripped out the xml… just replace the pound signs below with chevrons.
#queryOptions#
#QueryOptions#
#ViewAttributes Scope=’RecursiveAll’/#
#/QueryOptions#
#/queryOptions#
Благодарение на еден куп за овој пост, Paul. Сум се обидува да се консумираат GetListItems преку ColdFusion cfhttp, и не би можеле да добијат на ковертот право. На крајот наидов на овој пост, и вашиот пример работеше беспрекорно. Ви благодариме повторно.
BTW – знаеш на извор кој ги набројува сите соодветни сапун коверти? Оној за GetList Теми објавени на microsoft.com не одговара на Вашата овде…