მე აკეთებდა ზოგიერთი კვლევის ვინმე დღეს დაახლოებით list.asmx ვებ სერვისი, როგორც ნაწილი SharePoint 2010 (და უფრო ადრე). ის იყო შეუძლია მიიღოს სია ნივთები ძირეული საქაღალდე (მათ შორის სახელების საქვეუწყებო ფოლდერები), მაგრამ ვერ მოახერხა ნივთები ქვეპუნქტით საქაღალდეები. მე რაღაც ეძებს გარშემო internets და ეს გასაკვირი საერთო კითხვაზე. თუმცა, მე ვერ კარგი პასუხი მარტივი კითხვა, "თუ ვიცი, ფოლდერში, როგორ მივიღებ ნივთები ფოლდერი?" მართალი გითხრათ, მე არ ცდილობენ ყველა რომ მძიმე წლიდან მე მინდოდა ტექსტური ამ ერთი ჩემს ხნით .
იმისათვის ეს ყველაფერი, მე შეიქმნა საიტი სახელწოდებით "Blogging სცენარი" და საბაჟო სიაში დასახელებული "მორგებული სია Sub ტიპი". მე მაშინ შექმნილი საქაღალდეები დაასახელა:
- წელი 2005
- წელი 2006
- წელი 2007
მე დასძინა რამდენიმე საკითხი უნდა დირექტორია "2006 წელი". ეს არის რას ჰგავს:
ჩემი მეგობარი არ არის წერა C # კოდი არამედ გამოყენებით ჯავის, ასე საპონი კონვერტში იყო ის, რაც მან ნამდვილად საჭიროა. იმისათვის რომ, რომ, დავწერე ცოტა jQuery და შემდეგ გამოიყენება fiddler მიიღოს ფაქტობრივი HTTP საუბარი.
აი შესაბამისი jQuery (მე გადაწერა კოდი ქვემოთ ქვემოთ, თუ გინდათ ასლი / პასტა):
ისინი უპირველეს უნდა შეიცავდეს ორივე <queryOptions> და <QueryOptions> კვანძის. მეორე გასაღები იმაში მდგომარეობს, რომ <Folder> კვანძის არის URL, კლიენტს ხელი მიუწვდება.
ამისთვის შეიძლება იყოს სხვა გზები მიიღოს ამ, მაგრამ ეს კარგად მუშაობდა ჩემთვის, როდესაც გამოყენებით jQuery.
აქ არის საპონი კონვერტში ზემოთ:
<soapenv:კონვერტი xmlns:soapenv =’http://schemas.xmlsoap.org / საპნის / კონვერტში /’>
<soapenv:Body>
<GetListItems xmlns =’http://schemas.microsoft.com / SharePoint / საპნის /’>
<ფოთლოვანი>საბაჟო სიაში Sub საქაღალდეები</ფოთლოვანი>
<viewFields>
<ViewFields>
<FieldRef სახელი = 'სათაური’ />
<FieldRef სახელი = 'EncodedAbsUrl’ />
</ViewFields>
</viewFields>
<queryOptions>
<QueryOptions>
<Folder>http://demoserver1/Blogging სცენარი / სიებში / საბაჟო სიაში Sub საქაღალდეები / 2006 წელი</Folder>
</QueryOptions>
</queryOptions>
</GetListItems>
</soapenv:Body>
</soapenv:კონვერტი>
უამრავი მაგალითი და დისკუსია გარშემო გამიყვანა, რომ ყველა მე უნდა იყო <QueryOptions> და დააკონკრეტა საქაღალდე სახელი. ჩემთვის, მე უნდა ორივე გადატანა შიგნით <queryOptions> ისევე როგორც დააკონკრეტა მთლიანად კვალიფიციური URL for <Folder> კვანძის.
აი jQuery AJAX კონფიგურაცია:
$(დოკუმენტი).მზად(ფუნქცია() {
იყო soapEnv =
"<soapenv:კონვერტი xmlns:soapenv =’http://schemas.xmlsoap.org / საპნის / კონვერტში /’> \
<soapenv:Body> \
<GetListItems xmlns =’http://schemas.microsoft.com / SharePoint / საპნის /’> \
<ფოთლოვანი>საბაჟო სიაში Sub საქაღალდეები</ფოთლოვანი> \
<viewFields> \
<ViewFields> \
<FieldRef სახელი = 'სათაური’ /> \
<FieldRef სახელი = 'EncodedAbsUrl’ /> \
</ViewFields> \
</viewFields> \
<queryOptions> \
<QueryOptions> \
<Folder>http://demoserver1/Blogging სცენარი / სიებში / საბაჟო სიაში Sub საქაღალდეები / 2006 წელი</Folder> \
</QueryOptions> \
</queryOptions> \
</GetListItems> \
</soapenv:Body> \
</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#
მადლობა bunch ამ პოსტზე, პოლ. მე ცდილობს მოიხმარენ GetListItems მეშვეობით ColdFusion cfhttp, და ვერ შეძლო კონვერტში უფლება. საბოლოოდ მოვიდა მასშტაბით ჩანაწერი, და თქვენი მაგალითი მუშაობდა flawlessly. მადლობა კიდევ ერთხელ.
BTW – იცით of რესურსი, რომ ჩამოთვლილია ყველა სათანადო საპნის კონვერტები? ერთი GetList ნივთი გამოქვეყნდა microsoft.com არ შეესაბამება თქვენი აქ…