当前版本中弃用了以下客户端 API 以重新组织 Xrm 客户端 API 对象模型,从而更好地满足以下需求:使用同一客户端脚本而不必基于上下文或基于运行这些脚本的客户端(Web 客户端或新的统一接口)来进行更改。 应计划使用替换客户端 API 列中提到的新客户端 API,而非已弃用的客户端 API。 已弃用的客户端 API 将继续可用且受支持,直到在 Dynamics 365 的未来主要版本中将其正式删除。
弃用的客户端 API | 替换客户端 API | 注释 |
---|---|---|
Xrm.Page | 窗体:ExecutionContext.getFormContext 命令: | Xrm.Page 是主窗体上下文。 如果脚本在辅助上下文(网格行、快速窗体和相关实体)上运行,则 Xrm.Page 将用于错误的窗体上下文。 通过使用获取窗体上下文的替代方法,我们将允许在所有上下文中使用同一脚本而不进行任何修改。 |
将其作为 PrimaryControl 参数发送 | ||
Xrm.Page.context | Xrm.Utility.getGlobalContext | 允许在不浏览窗体上下文的情况下访问全局上下文。 |
Xrm.Page.context.getQueryStringParameters | formContext.data.attributes | formContext.data.attributes API 将使非实体绑定数据的检索在实体窗体、元数据驱动型对话和基于任务的流中保持一致。 该数据是下列值的组合:即使用查询字符串发送的自定义值,以及 openForm()、openQuickCreate() 或 openDialog 方法中的参数指定值。 |
Xrm.Page.context.getTimeZoneOffsetMinutes | globalContext.userSettings.getTimeZoneOffsetMinutes | 已移动到 globalContext.userSettings |
Xrm.Page.context.getUserId | globalContext.userSettings.userId | 已移动到 globalContext.userSettings |
Xrm.Page.context.getUserLcid | globalContext.userSetings.languageId | 已移动到 globalContext.userSettings |
Xrm.Page.context.getUserName | globalContext.userSettings.userName | 已移动到 globalContext.userSettings |
Xrm.Page.context.getUserRoles | globalContext.userSettings.securityRoles | 已移动到 globalContext.userSettings |
Xrm.Page.context.getIsAutoSaveEnabled | globalContext.organizationSettings.isAutoSaveEnabled | 已移动到 globalContext.organizationSettings |
Xrm.Page.context.getOrgLcid | globalContext.organizationSettings.languageId | 已移动到 globalContext.organizationSettings |
Xrm.Page.context.getOrgUniqueName | globalContext.organizationSettings.uniqueName | 已移动到 globalContext.organizationSettings |
Xrm.Page.data.entity.save(string) | Xrm.Page.data.entity.save(saveOptions) | 使用 saveOptions 对象而不是字符串参数。 |
Xrm.Page.data.entity.getDataXml | 该方法无变化,但使用了查找属性的“typename”而非 type。 | |
GridRow.getData | GridRow.data | GridRow 实质上是一个窗体上下文。 此更改将 GridRow 的接口与 formContext 统一。 |
GridRowData.getEntity | GridRowData.entity | GridRowData 是窗体数据。 此更改将 GridRowData 的接口与 formContextData 统一。 |
Xrm.Mobile.offline | Xrm.WebApi.offline | 移动了 Xrm.WebApi.offline 下的脱机相关方法 |
parent.Xrm | 以前:HTML Web 资源可通过 parent.Xrm.Page 或 parent.Xrm.Utility 与窗体中的Xrm.Page 或 Xrm.Utility 对象交互。 现在:如果该 HTML Web 资源在窗体容器中加载,parent.Xrm.* 将正常工作。 对于其他位置(如将 HTML Web 资源作为站点地图的一部分加载),parent.Xrm.* 将不会工作。 | |
addOnKeyPress | 使用通过新的自定义控件框架构建的自定义控件 | |
removeOnKeyPress | 使用通过新的自定义控件框架构建的自定义控件 | |
showAutoComplete | 使用自定义控件和对应的 UI | |
hideAutoComplete | 使用自定义控件和对应的 UI | |
Xrm.Utility.alertDialog | Xrm.Navigation.openAlertDialog | 新签名与其他 API (openForm) 一致,并采用了一组新参数来提高灵活性。 |
Xrm.Utility.confirmDialog | Xrm.Navigation.openConfirmDialog() | 新签名与其他 API (openForm) 一致,并采用了一组新参数来提高灵活性。 |
Xrm.Utility.isActivityType | Xrm.Utility.getEntityMetadata | isActivityType 方法是同步的,因此适合功能区规则。 但是,替代方法 getEntityMetadata 是异步的,因此不适合功能区规则。 |
Xrm.Utility.openEntityForm | Xrm.Navigation.openForm | 将导航操作移动到 Xrm.Navigation |
Xrm.Utility.openQuickCreate | Xrm.Navigation.openForm | 将导航操作移动到 Xrm.Navigation |
Xrm.Utility.openWebResource | Xrm.Navigation.openWebResource | 将导航操作移动到 Xrm.Navigation注意:此 API 在统一接口中返回 VOID |
文章为原创,如需引用请注明引用。