我正在将sharepoint网络服务与我的iPhone应用程序集成。完成GetListCollection
和GetListItems
服务集成。在尝试使用GetListItemChangesSinceToken
服务进行同步而不是使用GetListItems
服务时,我会在响应中获取文档库的所有项目,这意味着它会从该文档库递归地提取所有项目,而我只需要特定于该库的项目(而不是子文件夹项目)
这是我的文件夹层次结构
测试 - >测试1(SF),测试doc1(D),测试doc2(D) - >测试2(SF),测试1 doc1(D)
SF - SubFolder; D - 文件
我正在使用的肥皂消息是:
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
:测试
此请求返回Testing文件夹中的所有项目(测试1(SF),测试doc1(D),测试doc2(D),测试2(SF),Testing1 doc1(D)),而我只需要项目特定于该文件夹(测试1(SF),测试doc1(D),测试doc2(D))。
答案 0 :(得分: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>