首页 > 代码库 > SharePoint服务器端对象模型 之 访问网站和列表数据(Part 3)

SharePoint服务器端对象模型 之 访问网站和列表数据(Part 3)

(三)视图

与传统意义上的数据视图类似,SharePoint中的列表视图指定了列表中数据的筛选条件、排序条件、分组条件、显示栏/字段、显示条目数、显示样式等内容。在SharePoint中,使用SPView表示列表视图,使用SPViewCollection表示视图的集合。

在SharePoint中,作为列表、文档库最主要的显示途径,每一个视图都对应有一个Url(即该视图所在页面的地址)。事实上,当我们向页面中插入一个Web部件选择“列表和库”分类,或者直接选择插入一个“现有列表”(如下图所示)的时候,实际上都是创建了一个该列表或文档库的新视图,而该视图的地址正是这个Web部件所在的页面。

image

 

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属性,我们可以设置多个排序条件,不过分组条件依然只能设置两个。

SharePoint服务器端对象模型 之 访问网站和列表数据(Part 3)