我正在尝试获取列表中的所有文件夹项。我知道文件夹内容类型以0x0120开头。所以我写了这两个查询
http://sharepoint.com/sites/dev3/_api/web/lists/getbytitle('Discussions')/items?$filter=substringof(%270x0120%27,ContentTypeId)
这不会返回任何结果。
(这是此线程中建议的解决方案OData substringof or startswith returning all items)
我也试过
http://sharepoint.com/sites/dev3/_api/web/lists/getbytitle('Discussions')/items?$startswith(%270x0120%27,ContentTypeId)
这会返回结果,但会返回所有内容......它根本不会根据我指定的ID进行过滤。
我也试过
http://sharepoint.com/sites/dev3/_api/web/GetFolderByServerRelativeUrl('/sites/dev3/lists/Discussions')/folders
这会产生结果......但不会返回我需要的项目ID等详细信息。
我的最终目标是,如果有一个列表,其中包含一个名为Foo的文件夹和一个名为Bar的项目。查询应该只获取Foo文件夹并给我详细信息等。
我正在寻找一个REST解决方案(没有CAML)。到目前为止,我尝试过的解决方案要么归还Foo和Bar。或者没有。
答案 0 :(得分:7)
找到答案。把它放在这里,以便它可以帮助某人
幅/列表/ getbytitle( '列表)/项目?$滤波器= startswith(ContentTypeId,' 0x0120' )