技术开发 频道

用SharePoint Online实现基于云的协作

    【IT168 技术】随着 Office 365 的发布,Microsoft 将推出 Microsoft Online Services 的下一版本,它是一种建立在 SharePoint 2010、Exchange 2010 和 Lync Server 2010 之上的、基于云的协作与通信服务。 Office 365(当前还处在测试版阶段)将作为一种基于订阅的“软件即服务”(SaaS) 产品提供 SharePoint、Exchange 和 Lync,托管在由 Microsoft 管理的云数据中心。

  SharePoint Online 是 SharePoint 2010 的基于云的版本,它将为用户提供 SharePoint 2010 也具备的许多功能,但是无需管理可缩放且安全的协作解决方案所需的硬件或软件。 在本文中,我将通过构建一些在 SharePoint Online 中运行的解决方案,来概述 SharePoint Online 开发与 SharePoint 2010 开发之间的异同之处。

  随着 SharePoint Online 的下一版本的推出,SharePoint 开发人员将能够使用他们在面向 SharePoint 2010 进行开发时所使用的技术和工具(包括 Visual Studio 2010、SharePoint Designer 2010、C# 或 Visual Basic、SharePoint API 以及 SDK)来开发协作解决方案。 虽然面向内部部署的 SharePoint 和面向云中的 SharePoint 的开发有许多相似之处,但两者也有很大的区别,这些区别将会影响您构建解决方案的方式。

  了解这些区别将有助于您理解可以创建哪些在 SharePoint Online 中运行的解决方案以及如何开发这些解决方案。

  SharePoint Online 自定义相似之处

  在 SharePoint 2010 开发中,您可以通过使用浏览器和 SharePoint Designer 2010 以及使用 Visual Studio 2010 构建解决方案来自定义 SharePoint。 对于 SharePoint Online,除了下一部分介绍的功能区别之外,使用浏览器和 SharePoint Designer 2010 进行自定义与使用 SharePoint 2010 进行自定义的情况大致相同。 使用 Visual Studio 2010 开发 SharePoint Online 解决方案也大致相同。 开发是在 Visual Studio 2010 中针对 SharePoint 2010(在 Windows 7 或 Windows Server 2008 R2 中本地运行,或者在虚拟机(简称 VM)中本地运行)的一个本地实例进行的,利用了适用于迭代开发的集成调试体验。 完成开发后,使用 SharePoint 2010 中提供的相同解决方案库将该解决方案上载到 SharePoint Online 中。

  SharePoint Online 自定义主要区别

  虽然 SharePoint Online 基于 SharePoint 2010,但当您开发将在 SharePoint Online 中运行的解决方案时还需要注意一些主要区别。 首先,SharePoint Online 只支持作用域为站点和 Web 的解决方案。 SharePoint Online 在多用户云中运行,在该云中多个用户在一个共享的数据中心基础结构上运行,因此它不支持作用域为场(为整个场激活功能)的解决方案也是可以理解的。 同样,在 SharePoint Online 中,对您的 SharePoint 用户的最高访问级别是站点集合级别,因此它也不支持作用域为 WebApplication 的功能(其中某项功能在 Web 应用程序中的每个网站中运行)。

  其次,SharePoint Online 只支持部分信任的解决方案, 不支持完全信任解决方案,完全信任解决方案是指拥有超越站点集合级别的访问权限或可以被授权在场上使用管理员级别权限运行的解决方案。

  最后,虽然 SharePoint Online 基于 SharePoint 2010,但它与它的对应内部部署应用程序在功能上并不是完全相同的。 要了解 SharePoint 2010 与 SharePoint Online 之间的完整功能比较,请参阅“Office 365 Beta Service Descriptions”页面(网址为 bit.ly/bBckol)上的“Microsoft SharePoint Online Beta Service Description”。

  从功能列表可以看出,大多数 SharePoint 自定义功能都受支持。 不支持业务连接服务 (BCS)、外部列表以及在 SharePoint Online 外部调用 Web 服务的能力(在部分信任的解决方案中不支持从外部调用 Web 服务)将会对构建能够在 SharePoint Online 中运行的解决方案产生巨大影响。 然而,计划在未来版本中支持 BCS。

  了解这些相似之处和区别之后,让我们来看一些您能够构建以在 SharePoint Online 中运行的解决方案的例子,包括沙盒解决方案和 SharePoint 客户端对象模型 (OM)。 其他类型的解决方案,如通过声明性工作流解决方案自动执行业务流程,将会在以后的文章中介绍。

  使用沙盒解决方案进行面向 SharePoint Online 的开发

  在上文中,您了解到必须将 SharePoint Online 解决方案的作用域设定为站点或 Web 功能,这些解决方案只能使用站点集合中的数据,并且必须在部分信任环境中运行。 开发作为沙盒解决方案运行的解决方案可以满足所有这些标准,同时还可以允许 SharePoint Online 管理员通过将解决方案直接上载到解决方案库中来轻松部署解决方案。

  Visual Studio 2010 为沙盒解决方案提供强大支持,包括项目模板和项目项模板支持、用于以沙盒解决方案的方式创建新项目的 SharePoint 自定义向导、针对作用域为站点集合的 SharePoint API 的 IntelliSense 支持以及调试和打包支持。 要为 SharePoint Online 构建一个解决方案,您将基于 SharePoint 2010 在本地开发和调试解决方案。 您将需要同时安装 Windows 7(64 位)或 Windows Server 2008 R2 以及 SharePoint 2010 和 Visual Studio 2010。 另一个好方法是使用 2010 Information Worker Demonstration and Evaluation Virtual Machine (RTM),该工具提供一个虚拟的 SharePoint 2010 开发环境(可从 bit.ly/ezfe2Y 下载该工具。) 我还建议使用 Visual Studio 2010 SharePoint Power 工具 (bit.ly/azq882),该工具添加了针对沙盒的编译时支持以及经过沙盒处理的可视 Web 部件项目项模板。

  在本文的示例中,我将以使虚构的 Contoso Corp. 公司的员工能够 请求其采购系统中不支持的采购这个简单的情形为例,来讲述如何构建解决方案。 首先,我将在我的内部部署 SharePoint 2010 开发环境中创建一个站点集合和一个站点。 我使用的是之前所提到的 VM,因此我已经创建了 http://o365dpe.contoso.com/sites/spomsdnmag/purchasing。 我的第一个解决方案将部署用于跟踪这些非标准采购的列表。 我将打开 Visual Studio 2010,选择“文件”|“新建项目”,在“新建项目”对话框中,我将选择“空白 SharePoint 项目”,并将该项目命名为 PurchasingMgr。

  在“SharePoint 自定义向导”对话框中,在“您想使用哪个本地站点进行调试?”中,我将输入我站点的 URL(即 http://o365dpe.contoso.com/sites/spomsdnmag/Purchasing/),选择“作为沙盒解决方案部署”,然后单击“完成”,如图 1 所示:

0
相关文章