将解决方案从一个实例移动到另一个实例时应应用一组规则,因此有一个想法是使用自定义工具来进行所有更改、将解决方案导出和导入到另一个实例。接下来的问题是:
如何用C#实现“解决方案升级应用”?
通过设置(CRM 2016 SDK)可以轻松导入“作为持有”
var import = new ImportSolutionRequest();
import.HoldingSolution = true;
这允许在目标环境中拥有一个保留解决方案,但经过一些测试后,我们仍然无法为之前安装的解决方案“应用”此升级。
提前谢谢您。
最佳答案
导入保留解决方案后,您可以使用 DeleteAndPromoteRequest
对其进行升级。
一个基本示例:
public Guid UpgradeSolution(string solutionUniqueName, IOrganizationService service)
{
var request = new DeleteAndPromoteRequest
{
UniqueName = solutionUniqueName
};
var response = (DeleteAndPromoteResponse)service.Execute(request);
return response.SolutionId;
}
在 DeleteAndPromoteResponse
中,SolutionId
属性保存升级解决方案的 Guid
。
关于c# - Dynamics CRM/Dynamics 365 以编程方式应用解决方案升级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41364576/