3

是否可以使用 SPQuery 获取 SharePoint 文档库中所有文件夹的列表?

如果您打开 Windows 命令提示符并运行,您可能会在文件系统中获得一些东西

 dir /b /A:D /S

问题是,如果您创建一个简单的 SPQuery 并将 viewAttributes 设置为Scope='RecursiveAll',则结果集包含项目,但不包含文件夹。

还是我完全错过了什么?

更新。:这个问题的原因是(是)我必须创建一个“文件包”有意义的解决方案。
当我的客户谈到“文档”时,他实际上是指一个可能由多个文件和这些文件的一组通用元数据组成的实体。

例如,该文档可能被命名为“给我奶奶的一封信”(属性:奶奶的地址、信件标题),但它由几个文件组成:MS Word 文档中的实际信件和 JPEG 图片。

所以,我的想法是我可以创建一个从文件夹派生的内容类型,并向这个内容类型添加一些字段(地址、标题)。放入该文件夹的所有文件自然会成为“文档”的一部分。

由于我们预计会有很多此类文档,因此我们也创建了常规类型文件夹的文件夹层次结构。

现在,我们来了一个问题:如何向我的客户显示“最近的文档”之类的视图?这必须递归地枚举所有“文档”。由于必须发出的请求数量,通过对象的递归SPFolder太慢了。我们希望有一个 recursive SPQuery,但这似乎无法以这种方式解决。

4

1 回答 1

1

您应该能够通过过滤内容类型来获取所有文件夹。

<Eq><FieldRef Name='ContentType' /><Value Type='Text'>Folder</Value></Eq>
于 2010-05-20T19:24:33.817 回答