(三)视图
与传统意义上的数据视图类似,SharePoint中的列表视图指定了列表中数据的筛选条件、排序条件、分组条件、显示栏/字段、显示条目数、显示样式等内容。在SharePoint中,使用SPView表示列表视图,使用SPViewCollection表示视图的集合。
在SharePoint中,作为列表、文档库最主要的显示途径,每一个视图都对应有一个Url(即该视图所在页面的地址)。事实上,当我们向页面中插入一个Web部件选择“列表和库”分类,或者直接选择插入一个“现有列表”(如下图所示)的时候,实际上都是创建了一个该列表或文档库的新视图,而该视图的地址正是这个Web部件所在的页面。
1、视图的获取
获取视图有如下几种方式:
(1) 使用SPList的DefaultView属性获取列表的默认视图;
(2) 使用SPList的Views属性(SPViewCollection类型)获取列表中的所有视图,之后使用索引器获取具体的某个视图:
- Views[idx]:int型索引器,按照下标获取,很少使用;
- Views[id]:Guid型索引器,根据视图的Guid获取;
- Views[name]:string型索引器,根据视图的名称获取,比较常用。
使用SPWeb的GetViewFromUrl方法,使用视图的相对网站的Url获取视图。
2、视图的常用属性
SPView的一些常用属性如下:
名称 | 类型 | 说明 |
Query | string | 视图的筛选、排序、分组条件,CAML格式 |
RowLimit | uint | 视图显示的条目数(或每页显示的条目数) |
Title | string | 视图的名称 |
Url | string | 视图相对于网站的Url |
ServerRelativeUrl | string | 视图相对于服务器的Url |
ViewFields | SPViewFieldCollection | 视图显示的字段的集合 |
在视图的Query属性中我们第一次见到了CAML这种Xml格式,SharePoint中正是通过CAML的方式定义了列表的筛选条件、排序条件、分组条件。读者可以通过Visual Studio的服务器资源管理器,查看一下针对不同列表、在不同的排序筛选情况下的Query属性,从而对查询用的CAML有一个初步印象。关于CAML和列表查询的具体内容在本章稍后会有专门的章节进行介绍。值得说明的是,在视图的设置页面中,我们仅能够设置2个排序条件,但是通过使用代码修改Query属性,我们可以设置多个排序条件,不过分组条件依然只能设置两个。