SharePoint 客户端对象模型客户端对象模型 (一一) ECMA Script
今天开始SharePoint Client对象模型的介绍,简而言之,SharePoint通过WCF技术在服务端提供数据服务,这
些服务提供的内容相当于SharePoint API的一个子集
所谓的客户端对象模型就是调用了背后的WCF服务来提供数据,为了减轻数据的访问量数据包使用JSON,我们还可以看到对
象模型的设计也加入了诸多对于减轻数据访问量的考量。技术上没有什么新意,你要愿意,在SharePoint2007里面也可以实
现类似的功能,当然在使用上方便了我们不少
三种使用客户端模型的.NET托管、ECMA脚本,SilverLightClient.
本文讲阐述如何使用.NET托管代码来访问SharePoint对象模型。
ECMAScript Client OM需要注意的几个点需要注意的几个点
ECMAScript仅能够在SharePoint站点里面使用,不能够在其他的Asp.NET站点里使用ECMAScript来访问SharePoint站
点资源,也不能够跨SharePoint站点访问资源;
JQuery和ECMAScript使用起来不会有冲突;
为了安全的更新内容,在使用ECMAScript的画面里添加<SharePoint:FormDigest runat="server" />
在随后你将会看到的代码里为了减轻加载的数据量,可以指定需要加载的内容,例如
client.Context.load(this.web,'Title','Id','Created'), 这里的属性值名称使用和CAML一样的体系,对大小写敏感;
为确保你的代码执行在SP.JS加载完之后再被调用,可以使用ExecuteOrDelayUntilScriptLoaded(myjsFunction,
“sp.js”)。
我们看看SharePoint OM和客户端OM的一个简单的匹配关系:
服务器端服务器端OM 客户端客户端OM
SPContext ClientContext
SPSite Site
SPWeb Web
SPList List
SPListItem ListItem
SPField Field
看看最后会呈现的效果,下图是初步计划的功能,主要设计列表的创建、查询以及管理,另外也涉及上传文件的Case,后续
里如果有重要的也会逐步加进来。
里面的链接会调用UI方面的Javascript接口创建SharePoint2010风格的弹出窗口,弹出窗口的后台页面位于SitePage文档库
内,请注意这个仅仅适用于打开的页面是WebPart page,如果不是打开的时候会报错误:“The Ribbon Tab with id: