使用SPQuery.ViewFields属性限制返回列表项的列(栏)

虽然可以通过视图来限制获取列表数据的列,但视图有一个项目限制的功能,也就是一次显示多少条项目数,默认只显示30条数据,
多余的数据就会分页显示。因此在使用对象模型根据视图获取数据时也只会得到前30条的数据,所以如果不想得到项目数的限制,
则可以使用SPQuery的ViewFields属性来限制列。代码如下:

protected void GetColumnByViewFields()
{
  SPWeb web = SPContext.Current.Web;
  SPList list = web.Lists.TryGetList("通知");
  SPQuery query = new SPQuery();
  query.ViewFields = "<FieldRef Name='Title'/><FieldRef Name='CreatedOn'/>";
  SPListItemCollection itemColl = list.GetItems(query);
}

使用SPQuery对象的ViewFields属性将要获取的列添加进去,这样获取到的数据就会很少,减少了服务器的压力。
ViewFields属性中每个字段的格式为:<FieldRef Name='Title'/>,其中Title就要想要获取的列名,也就是SharePoint列表的栏名

原文地址:https://www.cnblogs.com/gaoxingstyle/p/2971989.html