PnP 预配框架

PnP 供应框架可提供以代码为中心且基于模板的平台,用于预配网站集。 新的预配引擎允许在 Office 365 和 SharePoint Online 以及内部部署网站集中保留和重复使用预配模型。

注意

PnP 预配框架 & PnP 预配引擎是开放源代码解决方案,其活动社区为其提供支持。 没有用于 Microsoft 开放源代码工具支持的 SLA。

为什么使用新方法?

随着 SharePoint 外接程序和外接程序模型(以前称为“应用模型”)的推出,Microsoft 已弃用沙盒和完全信任的解决方案,转向提供程序托管的外接程序和內部部署解决方案。 这些创新推动了预配模型的革新和新预配引擎的引入。

新预配模型的优点

与使用沙盒和完全信任的解决方案相比,此方法许多优势。 使用新的预配模型,你可以:

  • 自定义模板。 由于网站集始终是从现成的模板开始,因此你通过使用新的远程预配模型引入的自定义项会纳入自动更新,而无需进任何进一步的维护。 此外,此方法还可以避免由于不同网站集之间使用不同模板所导致的问题。

  • 使用基于模板的模型。 提供基于模板的简单预配模型,让你可以将现有网站设计另存为预配模板。

  • 使用不同的方法定义模板。 或者,你可以在验证 PnP 预配架构的 XML 中手动定义模板,或者使用托管代码来定义模板,以构造对象层次结构。 你可以结合使用这些方法。

  • 序列化和重复使用模板。 你可以序列化并重复使用你的预配模板。

  • 采用序列化的格式保留模板。 可以采用最适用的任何序列化格式保留你的预配模板,例如 XML 或 JSON。

  • 预配新网站集。 你可以采用所选的任何序列化格式将预配模板应用到目标网站,从而轻松地预配新网站集。

  • 与客户端对象模型集成。 集成客户端对象模型 (CSOM) 可通过启用基于代码的自动化预配,提供更大的灵活性。 通过使用 CSOM/REST 代码或 Windows PowerShell 脚本,可以使用预配模板来预配新网站集。

  • 使用增量预配。 你可以在现有网站上应用预配模板。 预配引擎支持增量预配,因此,将基于在模板定义中提供的任何作用域添加/更新网站。

  • 扩展预配引擎。 通过使用自定义扩展性提供程序(允许你执行使用 CSOM/REST 托管代码编写的自定义逻辑),可以轻松扩展预配引擎。

  • 跨本地和 Office 365 部署工作。 预配引擎现在允许你跨本地和 Office 365 部署无缝工作。 这是对先前预配技术的改进,先前自定义网站定义在 Office 365 中不受支持,因为它们需要服务器场范围的部署。

远程预配概述

在本部分中,我们将深入介绍远程预配的每个细节。 但是,首先大体了解一下最简单的远程预配也许会很有用。 从这个角度来看,远程预配仅涉及三个元素:

  1. 设计并创建网站的自定义项。

  2. 创建并采用所选的序列化格式选择性地保留预配模板。

  3. 将预配模板应用到使用现成的网站模板创建的新的或现有的网站集。

1. 设计并创建网站的自定义项

第一步是创建你想要保存的网站自定义项,并将其应用到网站集。 可以通过几种方式来执行此操作。

最简单的方法就是对现有的网站页面做出所需修改,然后将该页面另存为设置模板。 有关详细信息,请参阅 PnP 预配模板

您还可以将设置模板手动创建为 XML 文件,或通过使用托管代码 (CSOM/REST) 创建对象的层次结构,用以表示网站项目和结构。 如果您要创建架构文件,则必须针对设置 XSD 架构验证该文件(请参阅 PnP 设置架构)。

有关构建网站模型的详细信息,请参阅 PnP 预配引擎和核心库文章。

2. 创建并采用序列化格式保留预配模板。

以首选序列化格式导出自定义网站模型;预配引擎与保留格式无关。 所保存的自定义项实例就是你的预配模板,你可以非常轻松地将该模板应用到新网站集。

请注意,序列化和保留你的模板是仅当希望保留模板时才需要的一个可选步骤。 无需序列化模板也可以将其应用到新网站集。

3. 将预配模板应用到网站集

可以使用 Windows PowerShell 脚本或 CSOM/REST 代码将预配模板应用到新的或现有网站集。 你还可以预配整个网站集或仅预配它的一部分。

若要查看使用中的远程预配示例,包括将预配模板序列化为 XML,请参阅预配控制台应用程序示例

另请参阅