2013-04-02 53 views
4

我正在將sharepoint Web服務與我的iPhone應用程序集成。服務集成完成GetListCollectionGetListItems。在嘗試使用GetListItemChangesSinceToken服務進行同步而不是使用GetListItems服務時,我在響應中獲取了文檔庫的所有項目,這意味着它會從該文檔庫中遞歸地提取所有項目,而我只需要特定項目該庫(不是子文件夾項目)iPhone:Sharepoint GetListItemChangesSinceToken方法遞歸返回項目

這是我的文件夾層次結構

測試 - >測試1(SF),測試DOC1(d),測試DOC2(d) - >測試2(SF),Testing1 doc1(D)

SF - SubFolder; d - 文件

我使用SOAP消息是:

NSString *soapMessage = [NSString stringWithFormat: 
         @"<?xml version=\"1.0\" encoding=\"utf-8\"?> 
         <soap:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema- 
         instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" 
         xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\"> 
         <soap:Body> 
         <GetListItemChangesSinceToken 
         xmlns=\"http://schemas.microsoft.com/sharepoint/soap/\"> 
         <listName>%@</listName> 
         <queryOptions><QueryOptions> 
         <IncludeMandatoryColumns>TRUE</IncludeMandatoryColumns> 
         <DateInUtc>TRUE</DateInUtc> 
         <Folder>%@</Folder></QueryOptions> 
         </queryOptions> 
         </GetListItemChangesSinceToken> 
         </soap:Body></soap:Envelope>",listName,pathRef]; 

我正經過獲得第一級文件夾的項目(測試)的參數是 listName:測試 pathRef:測試

此請求返回測試文件夾中的所有項目(測試1(SF),測試doc1(D),測試doc2(D),測試2(SF),測試1 doc1(D)),而我只需要特定於該文件夾的項目(測試1(SF),測試doc1(D),測試doc2(D))。

回答

1

查看關於此http://msdn.microsoft.com/en-us/library/lists.lists.getlistitemchangessincetoken(v=office.12).aspx的MSDN文章,特別是關於queryOptions和文件夾部分的部分。 http://blogs.msdn.com/b/sharepointdeveloperdocs/archive/2008/01/21/synchronizing-with-windows-sharepoint-services-part-1.aspx

所以儘量

<folder>site/list/</folder> 

你只是想添加的根文件夾的文件夾選項,根據這一博客帖子這是一個服務器相對路徑