SPSite site=new SPSite(SPContext.Current.Web.Url);
SPWeb web=site.OpenWeb();
SPList splist=web.Lists["项目记录"];
SPQuery query = new SPQuery();
SPQuery queryDefault = new SPQuery();
SPQuery queryFilesOnly = new SPQuery();
SPQuery queryRecursive = new SPQuery();
SPQuery queryRecursiveAll = new SPQuery();
queryDefault.ViewAttributes = "Scope='Default'";
queryFilesOnly.ViewAttributes = "Scope='FilesOnly'";
queryRecursive.ViewAttributes = "Scope='Recursive'";
queryRecursiveAll.ViewAttributes = "Scope='RecursiveAll'";
// query.Query = "<Where><Eq><FieldRef Name='" + splist.Fields["项目名称"].InternalName + "'/><Value Type='Text'>" + this.DropDownList1.SelectedValue + "</Value></Eq></Where>";
//query.RowLimit = 1;
int i = 1; SPListItemCollection listItems = splist.GetItems(query);
SPListItemCollection listItemsDefault = splist.GetItems(queryDefault);
SPListItemCollection listItemsFilesOnly = splist.GetItems(queryFilesOnly);
SPListItemCollection listItemsRecursive = splist.GetItems(queryRecursive);
SPListItemCollection listItemsRecursiveAll = splist.GetItems(queryRecursiveAll);

sharepoint列表为【项目记录】

此列表既包括文件夹又包括列表项,目录结构如下:

【项目记录】下面包括3个东西:

其中【2013】和【2012】为文件夹,【1】为列表记录

2013下面包括如下内容:

5个文件夹,这些文件夹下都无内容

2012下面包括如下内容:

2012下面就只有【01】文件夹,

【01】文件夹下面内容如下:

都是列表项,14项。

那么总的文件夹数目:【2013】+【201301】+【201303】+【201304】+【201305】+【201312】+【2012】+[201201]=8项

总的列表纯记录数:15项。

从程序调试结果可以看到:

  queryDefault.ViewAttributes = "Scope='Default'";这个取出的范围为和没有赋值取出的范围一样的,3跳记录,都只是取出第1层的记录数,包括文件夹和列表记录
queryFilesOnly.ViewAttributes = "Scope='FilesOnly'";这个取出的范围为第一层的列表记录数,为1条记录
queryRecursive.ViewAttributes = "Scope='Recursive'";这个取出的范围是递归寻找所有层的纯列表记录数,为第一层的1+文件夹【201201】下的14条记录,合计为15条记录。
queryRecursiveAll.ViewAttributes = "Scope='RecursiveAll'";这个是递归取出所有的文件夹和文件夹纯列表,合计为23条记录。

没有只是取出文件夹列表的属性设置吗,要是有就更好。

SPQuery ViewAttributes Sharepoint列表查询范围的更多相关文章

  1. SHAREPOINT - CAML列表查询

    首先要了解的是CAML(Collaboration Application Markup Language)不仅仅是用在对列表.文档库的查询,字段的定义,站点定义等处处使用的都是CAML. 简单的提一 ...

  2. SharePoint中跨列表查询

    1,最近的项目中遇到一个需求,站点中有几十个列表,其中每5,6个列表属于一个模块下的.客户的需求是,首页上显示一个模块下所有列表数据的前5条,并按创建时间排序. 2,刚刚考虑到这块的实现方法时,用的是 ...

  3. [总结]SHAREPOINT - CAML列表查询(上)

    首先要了解的是CAML(Collaboration Application Markup Language)不仅仅是用在对列表.文档库的查询,字段的定义,站点定义等处处使用的都是CAML. 简单的提一 ...

  4. 【SharePoint学习笔记】第3章 SharePoint列表新特性以及数据访问

    第3章 SharePoint列表新特性以及数据访问   使用CAML查询语言     CAML:协作应用程序标记语言 Collaboration Application Markup Language ...

  5. SharePoint REST API - 同步SharePoint列表项

    博客地址:http://blog.csdn.net/FoxDave 本篇只讲REST服务中的GetListItemChangesSinceToken这个东西.何谓同步呢,你也可以理解为增量变化,即 ...

  6. sharepoint列表如何进行随机取几条记录?

    sharepoint列表如何进行随机取记录?由于itemid是不连续.可能存在删除添加等操作导致 我们可以采用随机取第几条记录.把记录集合取出来.产生随机第几条数.这里关键是如何产生不重复的随机数 方 ...

  7. 利用SSIS进行SharePoint 列表数据的ETL

    好几年前写了一篇<SSIS利用Microsoft Connector for Oracle by Attunity组件进行ETL!>,IT技术真是日新月异,这种方式对于新的SQL SERV ...

  8. SharePoint 列表的导出导入

    有一群友问到关于 SharePoint 列表的导入与导出的问题,而最近也要做相关操作且好久没写博客了,所以记录下来,过程其实相当简单. 方法:将 列表 保存为 模板(可包含数据),下载模板文件,上传到 ...

  9. atitit.提升开发效率---MDA 软件开发方式的革命(5)----列表查询建模

    )----列表查询建模 1. 配置条件字段@Conditional 1 2. 配置条件字段显示类型为range----@Conditional(displayType = displayType.ra ...

随机推荐

  1. 基于Docker搭建Maven私服Nexus,Nexus详解

    备注:首先在linux环境安装Java环境和Docker,私服需要的服务器性能和硬盘存储要高一点,内存不足可能到时启动失败,这里以4核8GLinux服务器做演示 一:基于Docker安装nexus3 ...

  2. Linux远程软件

    Xhell6:Linux的终端模拟软件 1>安装并破解:解压.破解(运行两个.bat文件).启动(点击Xshell.exe文件) 2>连接远端Linux系统: 创建会话:点击连接,在常规框 ...

  3. NOIP 2020 游记

    第一次写比赛游记,请多多指教! I. 考前 由于最近参加了太多太多比赛了,所以没有敲模板题: 考前一周:主要是在做 AtCoder 的题和 xjoi 的模拟赛,相当于恶补了一些套路吧! 考前一天:上午 ...

  4. Linux内网时钟同步问题(ntp和chrony)

    我们都知道时钟同步可以使用外网服务器,在内网内不能连接外网的时候也需要时钟同步,那怎么进行呢? 选择内网的一台稳定的服务器作为时钟源,然后让其他机器都来同步这台机器即可. 注:其实ntp服务和chro ...

  5. URI和URL的区别(转)

    转载:http://www.cnblogs.com/gaojing/archive/2012/02/04/2413626.html 这两天在写代码的时候,由于涉及到资源的位置,因此,需要在Java B ...

  6. 【原创】基于RPA的软件功能自动化测试

    简介:1个功能自动化的框架 特点:OCR识别文字内容,pylackey对比图像相似度 代码极简 适用于绝大部分场景 只需要对按钮进行截图 配合第三方库可以生成漂亮的测试报告 文件结构:action-- ...

  7. 【leetcode】36. Valid Sudoku(判断能否是合法的数独puzzle)

    Share Determine if a 9 x 9 Sudoku board is valid. Only the filled cells need to be validated accordi ...

  8. STL学习笔记1

    STL六大部件 容器.分配器.算法.迭代器.适配器.仿函数 他们的关系如下

  9. c学习 - 算法

    简介: 一个程序包括两方面内容:数据结构.算法 数据结构:对数据的描述,包括数据的类型和数据的组织形式 算法:对操作的描述,即操作步骤 (程序=算法+数据结构) 算法是灵魂,数据结构是加工对象,语言是 ...

  10. When should we write our own assignment operator in C++?

    The answer is same as Copy Constructor. If a class doesn't contain pointers, then there is no need t ...