C# Dynamics CRM/Dynamics 365以编程方式应用解决方案升级
在将解决方案从一个实例移动到另一个实例时,应该应用一组规则,因此可以使用自定义工具进行所有更改,并将解决方案导出和导入到另一个实例。下一个问题是: 如何使用C#实现“解决方案升级应用”? 可以通过设置(CRM 2016 SDK)轻松导入“持有状态” 这允许在目标环境中拥有保留解决方案,但经过一些测试后,我们仍然无法将此升级应用于以前安装的解决方案C# Dynamics CRM/Dynamics 365以编程方式应用解决方案升级,c#,microsoft-dynamics,dynamics-crm-online,dynamics-crm-2016,C#,Microsoft Dynamics,Dynamics Crm Online,Dynamics Crm 2016,在将解决方案从一个实例移动到另一个实例时,应该应用一组规则,因此可以使用自定义工具进行所有更改,并将解决方案导出和导入到另一个实例。下一个问题是: 如何使用C#实现“解决方案升级应用”? 可以通过设置(CRM 2016 SDK)轻松导入“持有状态” 这允许在目标环境中拥有保留解决方案,但经过一些测试后,我们仍然无法将此升级应用于以前安装的解决方案 先谢谢你 导入保留解决方案后,可以使用DeleteAndPromoteRequest对其进行升级 一个基本的例子: public Guid Upgra
先谢谢你 导入保留解决方案后,可以使用
DeleteAndPromoteRequest
对其进行升级
一个基本的例子:
public Guid UpgradeSolution(string solutionUniqueName, IOrganizationService service)
{
var request = new DeleteAndPromoteRequest
{
UniqueName = solutionUniqueName
};
var response = (DeleteAndPromoteResponse)service.Execute(request);
return response.SolutionId;
}
在deleteandpromoterensponse
中,SolutionId
属性保存升级解决方案的Guid
public Guid UpgradeSolution(string solutionUniqueName, IOrganizationService service)
{
var request = new DeleteAndPromoteRequest
{
UniqueName = solutionUniqueName
};
var response = (DeleteAndPromoteResponse)service.Execute(request);
return response.SolutionId;
}