创建、导出或导入非托管解决方案

本文档适用于 Dynamics 365 Customer Engagement (on-premises)。 对于此主题的 Power Apps 版本,请参阅: 创建、导出或导入非托管解决方案

除了作为创建托管解决方案的先决条件之外,非托管解决方案还可用于将一组非托管自定义分组到可在组织之间传输的集中。

更多信息:使用解决方案进行自定义

创建非托管解决方案

每个解决方案都需要有发布者。 如果不打算分发解决方案,可以使用为组织创建的默认发布者。 有关如何创建解决方案发布者的信息,请参阅创建解决方案发布者

下表列出了解决方案包含的字段和说明。

字段标签 Description
显示名称 解决方案的名称。
名称 Dynamics 365 Customer Engagement (on-premises) 会基于显示名称生成一个唯一名称。 您可以编辑该唯一名称。 唯一名称必须仅包含字母数字字符或下划线字符。
Publisher 使用发布者查找可将解决方案与发布者相关联。
版本 使用以下格式指定版本:major.minor.build.revision,例如:1.0.0.0。
配置页 如果解决方案中包含了 HTML Web 资源,则可以使用此查找将其添加为指定的配置页。

详细信息:使用解决方案配置页
说明 使用此字段可以包含有关解决方案的任何相关详细信息。

创建非托管解决方案后,您可以通过以下两种方式添加解决方案组件:在此解决方案的上下文中创建组件,或者从其他解决方案添加现有组件。 有关如何以编程方式创建解决方案的详细信息,请参阅创建解决方案

创建解决方案发布商

如果要分发托管解决方案,应创建一个 Publisher。 下表列出了 Publisher 包含的字段和说明。

Label Description
显示名称 在解决方案的发布者查找字段中显示的名称。
名称 Dynamics 365 Customer Engagement (on-premises) 会基于显示名称生成一个唯一名称。 唯一名称只能包含字母数字字符和下划线字符。 注意:使用 Unique Name 来唯一标识 Publisher。 具有同一个发布者的托管解决方案可以互相更新。
说明 使用此字段可以包含有关解决方案的任何相关详细信息。
前缀 自定义前缀可帮助您确定哪个发布者添加了解决方案组件。 例如,前缀将被添加到在与此发布者关联的解决方案上下文中创建的任何实体或属性的逻辑名称。 前缀长度必须在二到八个字符之间,并且只能包含字母数字字符。 不能以“mscrm”开头。
选项值前缀 通过此值,您可以帮助分离添加到选项集中的选项,以支持合并选项。 值基于前缀文本自动生成,帮助值的唯一性更高。 此值必须在 10,000 到 99,999 之间。

详细信息:合并选项集选项
联系人详细信息 使用这些字段添加让安装解决方案的人员能够与您联系的信息。

有关如何以编程方式创建发布者的信息,请参阅创建发布者

使用“解决方案配置”页面

解决方案配置页提供了一个区域,可用于显示信息或让客户在解决方案上下文中执行操作。 使用配置页查找字段设置配置页,来选择解决方案中包含的网页 (HTML) Web 资源。 这会让新配置节点出现在信息节点下和组件节点之上的“解决方案”窗口中。 配置节点将显示您设置的 Web 资源。

可以使用解决方案配置页显示将配置解决方案的控件。 例如,可以在解决方案中提供控制解决方案行为的一些实体。 通过使用 Web API 进行数据访问,可以在 Web 资源页上提供自定义控件来更新这些实体中的数据。

导出非托管解决方案

在以下情况下,您可能想要导出非托管解决方案:

  • 您必须编辑 customizations.xml 文件中的某些 XML 内容,例如,可能需要编辑 SiteMap 或创建自定义功能区。

  • 您想要将非托管解决方案从一个组织传输到另一个组织。

  • 您想要创建当前自定义集的备份。

    导出非托管解决方案将创建一个压缩文件,该文件随后可以导入到另一个组织或同一个组织。

    导出解决方案时仅包含已发布的自定义,因此在导出解决方案之前,请务必发布所有更改。

    使用 Web 应用程序导出解决方案时,如果解决方案包含任何缺少的必需组件,您会看到缺少必需组件步骤。 仅当您打算将此解决方案作为非托管解决方案导入到原组织时,才能忽略此警告。 否则,请按照对话框内的说明取消操作并添加必需组件。

    使用 ExportSolutionRequest 消息以编程方式导出解决方案。 详细信息:导出或打包解决方案

    使用 Web 应用程序导出解决方案时,在导出系统设置(高级)步骤中,可以选择解决方案中包含的系统设置。 这些选项通过请求中可用的成员使用 ExportSolutionRequest 提供给开发人员。 有关包含哪些设置的详细信息,请参阅请求的备注。

    导出解决方案时,可以选择目标版本。 可以导出与早期版本相符的解决方案。 详细信息:导出特定 Dynamics 365 Customer Engagement (on-premises) 版本的解决方案

导入非托管解决方案

在以下情况下,应导入非托管解决方案:

  • 您想要将一组自定义从一个组织传输到另一个组织,并希望允许更改解决方案组件。

  • 您想要还原或恢复到之前的解决方案组件定义集

    导入非托管解决方案是一个累加过程。 导入较旧版本的托管解决方案不会删除较新版本中包含的解决方案组件。 但是,将使用您导入的最后一个非托管解决方案中包含的定义覆盖所有解决方案组件属性的定义。

重要

无法卸载通过导入非托管解决方案应用的更改。 如果要回滚更改,不要安装非托管解决方案。

此操作使用 ImportSolutionRequest 消息以编程方式执行。 您可以编写代码来异步执行此消息。 详细信息:使用 ExecuteAsync 异步执行消息。 可以使用 ImportJob 实体跟踪导入进度或生成导入成功报告。 详细信息:安装或升级解决方案

重要

安装解决方案或发布自定义项会干扰常规的系统操作。 建议您安排在解决方案对用户的干扰最小时导入解决方案。

要导入的解决方案的最大大小

对于 Dynamics 365 for Customer Engagement,解决方案的最大大小为 29.296 MB。

对于本地组织,解决方案的默认最大大小为 6 MB,但可以根据需要增加。

 

通过在应用程序的 web.config 文件中编辑 <httpRuntime> 元素来更改允许的最大大小。 通过编辑 executionTimeoutmaxRequestLength 属性来允许必要的大小。 安装完解决方案后,可以将其设置为所需大小。

另请参阅

规划解决方案开发
使用 Dynamics 365 Customer Engagement (on-premises) 解决方案打包和分发扩展
自定义解决方案文件架构
创建、安装和更新托管解决方案
卸载或删除解决方案