【问题标题】:Cannot insert duplicate key in CRM 2011 Plugin import?无法在 CRM 2011 插件导入中插入重复键?
【发布时间】:2012-11-07 15:12:11
【问题描述】:

我已从 prod 服务器导出插件,并在导入测试服务器时收到以下错误消息。

未处理的异常:System.Web.Services.Protocols.SoapException: 服务器无法处理请求。

详情:

0x80040237

无法插入重复键。

平台

在 System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage 消息、WebResponse 响应、流 responseStream、布尔值 asyncCall)

在 System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(字符串 方法名,对象[]参数)

在 PluginRegistrationTool.CrmSdk.CrmService.Create(BusinessEntity 实体)

在 PluginRegistrationTool.RegistrationHelper.RegisterAssembly(CrmOrganization org, String pathToAssembly, CrmPluginAssembly 程序集)

在 PluginRegistrationTool.ImportExport.ImportSolution(CrmOrganization 组织,ICollection1 assemblies, ICollection1 已检查树节点, IDictionary`2 pathList)

在 PluginRegistrationTool.ImportExportForm.btnExecute_Click(Object 发件人,EventArgs e)

【问题讨论】:

    标签: dynamics-crm dynamics-crm-2011 dynamics-crm-4


    【解决方案1】:

    在您的测试服务器上检查是否已存在同名的插件/步骤/图像。如果是,则在尝试导入之前先将其删除。

    我建议您在尝试导入之前先删除所有已注册的插件。

    【讨论】:

    • 不要删除..禁用!禁用工作流以及加速导入通常是一种很好的做法,但这完全取决于您的系统设计是否可以安全禁用插件/工作流。
    【解决方案2】:

    当您创建一个新插件时,Visual Studio 将根据管道阶段(Pre-Validation、Pre-Operation、Post-Operation)和主要实体(Contact、Organization)自动为您创建步骤/类名称和消息(创建、更新等)例如,PostContactUpdate 或 PreOrganizationUpdate,因此如果您碰巧制作了具有相同消息、管道阶段和主要实体的另一个插件,并且您接受了可以解释您为什么得到的默认类名错误。更改类名并重新部署应该会为您修复它。

    【讨论】:

      猜你喜欢
      • 2023-03-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多