使用.NET托管代码访问SharePoint客户端对象模型

0 下载量 171 浏览量 更新于2024-08-28 收藏 180KB PDF 举报
本文主要介绍了SharePoint客户端对象模型(Client Object Model)中的ECMAScript版本,探讨了如何使用.NET托管代码来访问SharePoint对象模型,并提到了ECMAScript客户端对象模型的一些注意事项。 在SharePoint中,客户端对象模型是一种用于与SharePoint服务器交互的技术,它通过调用WCF服务并利用JSON格式来传输数据,从而减少数据访问量。虽然这种技术在SharePoint 2007中也可以实现类似功能,但在SharePoint的后续版本中,客户端对象模型变得更加便利和强大,提供了.NET托管、ECMAScript和SilverLightClient三种方式来使用。 本文重点讲解的是使用.NET托管代码访问SharePoint对象模型,这种方式允许开发者在服务器端编写代码来操作SharePoint数据。然而,值得注意的是,ECMAScript客户端对象模型只能在SharePoint站点内部使用,无法在其他Asp.NET站点中直接访问SharePoint资源,也无法跨站点操作。 在使用ECMAScript时,有几个关键点需要关注。首先,由于安全考虑,更新内容时应确保页面包含<SharePoint:FormDigest runat="server"/>元素。其次,为了减少数据加载,可以通过指定加载的属性来优化性能,如client.Context.load(this.web, 'Title', 'Id', 'Created')。此外,为了确保代码在SP.JS库加载完成后再执行,可以使用ExecuteOrDelayUntilScriptLoaded函数。 SharePoint服务器端对象模型与客户端对象模型之间存在对应关系,例如SPContext映射到ClientContext,SPSite映射到Site,SPWeb映射到Web,以此类推。这使得开发人员能够方便地在客户端代码中操作SharePoint的各种元素。 示例应用中,功能包括列表的创建、查询和管理,以及文件上传。这些操作通过JavaScript接口实现,可以打开SharePoint 2010风格的弹出窗口。请注意,这种方法适用于WebPartPage,如果打开的页面不是WebPartPage,可能需要调整实现方式。 SharePoint的客户端对象模型,特别是ECMAScript版本,为开发人员提供了更灵活、高效的方式来操作SharePoint数据,提高了开发效率并减少了网络通信的负担。通过理解这些关键点和最佳实践,开发者能够更好地利用这一强大的工具来构建SharePoint解决方案。