部署自定义项 - 概述 (SharePoint Server 2010)

 

适用于: SharePoint Server 2010

上一次修改主题: 2016-11-30

本章中的文章介绍如何部署开发人员或网站设计者在 Microsoft SharePoint Server 2010 环境中自定义的网站元素。

本文内容:

  • 过程概述

  • 开始之前

  • 关于两种类型的可自定义网站元素

  • 部署开发的网站元素

  • 部署创作的网站元素

过程概述

部署自定义项可能会非常复杂,特别是因为 SharePoint Server 2010 中提供了许多部署方法,而且与使用一种方法相比,使用另一种方法的优点通常并不明显。

可通过使用不同的方法来部署以上不同类型的网站元素或项目。您无法通过使用单一的部署方法来部署所有可自定义网站元素。另外,还有适用于每种类型的元素的其他特别的部署注意事项,因为它们很可能最初由不同组的设计人员组提出,并且需要遵循不同的升级注意事项。下文中的关于两种类型的可自定义网站元素介绍了不同类型的网站元素。

有关特定部署任务和相关注意事项,请参阅下列文章:

开始之前

在将任何自定义代码部署到环境之前,应建立环境性能的基准,以便能够分析自定义项如何影响性能。性能基准建立后,请在测试或集成环境中彻底测试自定义代码,并将结果与基准进行比较。在将所有自定义项部署到生产环境之前,请确保已对它们进行彻底测试。

在将从第三方获得的任何代码部署到生产环境之前,您也应对其进行测试,即使您是从受信任的来源获得的。

这些文章中的说明和指导适用于 SharePoint Server 环境,该环境已部署并配置为满足规划服务器场和环境 (SharePoint Server 2010) 中的要求。

关于两种类型的可自定义网站元素

开发的网站元素 是解决方案项目,通常由开发人员创建。解决方案可能包括程序集(使用基于 Microsoft .NET Framework 的语言编写,并在部署之前编译的 SharePoint 组件)。除计时器作业程序集和网站定义外,开发的网站元素通常按功能分组,并作为解决方案包的一部分部署。开发的网站元素包括:

  • Web 部件

  • 工作流

  • 网站和列表定义

  • 文档转换器

  • 事件接收器

  • 计时器作业

  • 程序集

创作的网站元素 通常由网站设计者创建,不是显式编译的,它驻留在内容数据库中。创作的网站元素包括:

  • 母版页

  • 级联样式表

  • 表单

  • 布局页

这两种类型的可自定义网站元素的区别在于:

  • 文件在 SharePoint Server 2010 服务器场中存储在何处。

  • 组织中的哪个小组负责管理网站元素。

  • 网站元素需要什么部署机制。

一些元素既可以是解决方案项目,也可以是创作的项目。例如,某内容类型可在 XML 文件中定义为开发的解决方案项目,也可以通过浏览器创建为创作的项目。既可以是解决方案项目也可以是创作的项目的网站元素包括网站栏和列表实例。此外,解决方案项目可用于将文件配置到网站中,并设置为缓存在前端 Web 服务器上的内存中。

部署开发的网站元素

开发的网站元素通常可定义为:在代码开发环境中创建,并直接部署到前端 Web 服务器和应用程序服务器。这些网站元素通常由开发人员使用 SharePoint 2010 的 Microsoft Visual Studio 2010 工具、Microsoft Office SharePoint Designer 或 XML 编辑工具进行自定义。有关详细信息,请参阅 SharePoint Foundation 开发工具 (https://go.microsoft.com/fwlink/?linkid=183360&clcid=0x804)。

备注

本文不讨论部署为沙盒解决方案的开发网站元素的部署。沙盒解决方案是可访问网站集管理员可部署的部分服务器对象模型和部分功能元素的解决方案。有关详细信息,请参阅沙盒解决方案概述 (SharePoint Server 2010)

最佳实践是使用解决方案包和 Windows PowerShell 来部署开发的网站元素。SharePoint Server 解决方案框架可简化和规范化在服务器场中部署新网站元素和升级网站元素,以及同步前端 Web 服务器以使其状态与服务器场中其他服务器的状态一致的过程。例如,解决方案包可简化重建服务器场的过程。通过手动处理代码和文件来部署网站元素可导致在升级过程中出现不一致,从而使服务器与其他服务器不同步。可使用解决方案包将开发的网站元素从开发人员环境部署到集成服务器场,再部署到暂存服务器场、试验服务器场和生产服务器场。

可使用 Windows PowerShell cmdlet 来创建、导入、导出和设置解决方案包,这些包利用解决方案框架来分发开发的网站元素自定义项。Windows PowerShell cmdlet 可用于在多数环境中部署网站自定义项,因为它随 SharePoint Server 2010 和 SharePoint Foundation 2010 附带,而且您可以单独使用它或将它与其他方法一起使用。可以使用 Windows PowerShell cmdlet 来部署项目和开发的网站元素。还可使用 cmdlet 来激活解决方案包中部署的功能。

部署创作的网站元素

创作的网站元素与开发的网站元素相比,不同之处在于:虽然前者依赖于 Web 服务器或应用程序服务器(通常较少)的文件系统中存在的资源,但它们存储在内容数据库中。在某些情况下,创作的网站元素要求先部署开发的网站元素才能工作。

在自定义部署完全自动化的环境中,系统可能会强制按所需的部署顺序来执行操作,以便消除同步问题。但是,如果自定义部署部分或完全手动执行,则必须确保所有必需的资源均位于 Web 服务器和应用程序服务器上,然后再部署依赖于这些资源的任何内容。

可以通过使用一个或多个不同的系统,将创作的网站元素从创作环境部署到临时服务器场、试生产服务器场和生产服务器场。下表介绍这些系统及其关联的接口和使用方案。

部署系统 使用方案

SharePoint 管理中心网站

在源服务器场和目标服务器场通过网络连接的环境中,可以使用管理中心中的内容部署功能在源服务器场上创建内容部署包,然后将该包导出到另一个服务器场。

此方法易于配置和使用,并且可用于自动部署创作的网站元素,所需的设置时间和维护都非常少。

内容迁移对象模型

根据所使用的方法(通过使用部署命名空间 API 进行编程、使用简单对象访问协议 (SOAP) 调用 Web 服务,或使用 Windows PowerShell cmdlet 移动整个网站),您可以控制迁移哪些内容和如何迁移这些内容。若要保留全局唯一标识符 (GUID),那么,使用该 API 来导入和导出内容是唯一受支持的方法。

有关详细信息,请参阅内容迁移 (https://go.microsoft.com/fwlink/?linkid=183372&clcid=0x804)。

Windows PowerShell

可以使用 Windows PowerShell cmdlet 对整个网站执行导入和导出操作,同时保留时间戳、安全信息和用户信息。如果要移动整个网站的基本内容,则 Windows PowerShell cmdlet 最为有用。

Windows PowerShell 可帮助在多数环境中部署网站自定义项,原因是它随 SharePoint 2010 产品 附带,而且您可以单独使用它或将它与其他方法一起使用。可以使用 Windows PowerShell cmdlet 来部署项目和开发的网站元素。

有关详细信息,请参阅借助 Windows PowerShell 的 SharePoint 2010 产品管理

自定义 Web 服务

可以创建自定义 Web 服务,以自动执行内容迁移和部署过程。可以编写自定义脚本和 Windows 应用程序,以执行此过程中的特定任务。

有关编写自定义 Web 服务的编程方法的详细信息,请参阅 Microsoft SharePoint 2010 软件开发工具包 (SDK) 中的以下资源:

手动代码处理

在断开连接的小型环境或并未持续对创作的网站元素进行自定义的环境中,可以手动部署网站元素和相关资源。在小型连接环境中,请考虑使用管理中心中的内容部署功能来部署创作的网站元素自定义项。

解决方案包和功能

诸如页面布局、母版页、表单和样式表等元素可按功能分组并在其中部署为解决方案包的一部分。从解决方案包部署的功能可在需要设置创作元素的范围内激活。

有关详细信息,请参阅使用功能部署网站元素 (SharePoint Server 2010)

自定义模板

用户可将现有网站(无论是否具有特定内容)另存为自定义模板。这样便可重用自定义的网站。自定义网站模板存储为 .wsp 文件。网站模板保存在网站集中的首要网站的解决方案库中,从而可用于创建网站集中的所有网站的子网站。可下载网站模板,也可将网站模板移动到其他网站集库。

See Also

Concepts

部署解决方案包 (SharePoint Server 2010)
部署创作的网站元素 (SharePoint Server 2010)
部署模板 (SharePoint Server 2010)
部署模板 (SharePoint Server 2010)