【发布时间】:2020-08-02 04:00:13
【问题描述】:
在我们的 Dynamics CRM 2011 服务器上突然出现一个奇怪的错误 - 当通过工作流程触发插件执行时,找不到特定的插件程序集,并出现以下错误:
[Microsoft.Crm.ObjectModel: Microsoft.Crm.ObjectModel.SyncWorkflowExecutionPlugin]
[324f29aa-6082-ea11-80ee-005056837add: ]
Starting sync workflow 'workflow name', Id: 2d4f29aa-6082-ea11-80ee-005056837add
Sync workflow 'workflow name' terminated with error 'The type initializer for '<Module>' threw an exception.'
异常堆栈跟踪最终导致:
Inner Exception: <CrtImplementationDetails>.ModuleLoadException: The C++ module failed to load while attempting to initialize the default appdomain.
at <CrtImplementationDetails>.ThrowModuleLoadException(String errorMessage, Exception innerException)
at <CrtImplementationDetails>.LanguageSupport.Initialize(LanguageSupport* )
at .cctor()
Inner Exception: System.Runtime.Serialization.SerializationException: Unable to find assembly 'AssemblyName, Version=8.75.0.267, Culture=neutral, PublicKeyToken=4e4051c21cef725b'.
程序集存在于服务器上,版本、文化和公钥令牌都匹配。奇怪的是,当通过创建/更新/等请求直接触发执行时,插件步骤工作正常 - 只有当通过工作流触发执行时才会发生错误。通过工作流触发,我并不是指从该程序集中运行代码活动,而是指如下情况:
- 实体已创建
- Assembly1 的 OnCreate 插件运行没有问题
- 运行更新相关实体的工作流,从 Assembly1 触发 OnUpdate 插件 - 错误
此问题最初是在服务器重新启动后出现的。再次重新启动暂时修复了它,直到两天后它再次开始发生。我们已经尝试了我们能想到的一切——更新程序集、注销/重新注册它、重新启动所有服务、再次重新启动服务器。有谁知道这可能是什么原因以及如何解决它?
【问题讨论】:
-
几个问题,您是否在代码中使用任何第 3 方 dll?你有你的 Prod CRM 服务器(Sql + 应用程序服务器)拆分,即它们在不同的机器上。?
标签: c# .net windows dynamics-crm dynamics-crm-2011