首页 > 代码库 > 使用SharePoint CSOM 编写高效的程序
使用SharePoint CSOM 编写高效的程序
上一篇文章中简单的介绍了使用CSOM进行编程。今天主要讲一下CSOM使用中一些小技巧,可以让你的程序运行的更快。
单独加载某些属性
在上文中的例子,需要返回Web对象信息的时候,我们使用了如下的代码:
var web= clientContext.Web;clientContext.Load(web);//设置查询信息
进行查询Web的信息,这时候,Web会返回很多属性,很多是我们不需要的,如果我们只需要返回某些属性的时候,我们可以使用如下的方式:
var currentWeb = clientContext.Web;clientContext.Load(currentWeb, web => web.Title, web => web.Url, web => web.WebTemplate);clientContext.ExecuteQuery();
这时候返回的报文变成了如下格式:
我们可以看到报文格式中,只返回了我们需要的属性。
以上两种情况下对比,返回的Respone长度分别是1200 和500,因此在网络吞吐有限的情况下,尽量少的返回查询属性,对于效率的提升有很重要的作用。
集合属性的查询
CSOM如何处理集合信息的查询呢,比如获取web下所有的list信息,我们可以:
clientContext.Load(currentWeb.Lists);clientContext.ExecuteQuery();
这时候,每一个list的所有信息都会返回来,如果我们只想回去某个list的Title和BaseTemplate,那么我们只需要:
var currentWeb = clientContext.Web;clientContext.Load(currentWeb.Lists, lists => lists.Include(list => list.Title, list => list.BaseTemplate));
或者可以使用:
clientContext.LoadQuery(currentWeb.Lists.Include(list => list.Title, list => list.BaseTemplate));clientContext.ExecuteQuery();
这两种情况下,在一个有25个list的Web中,Response的报文长度分别是38963 和8172,因此在加载集合的时候,选择合适的查询条件对性能的影响至关重要。
使用SharePoint CSOM 编写高效的程序
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。