【问题标题】:Can't find assemblies specified找不到指定的程序集
【发布时间】:2014-02-28 20:14:01
【问题描述】:

我使用的是 CRM 4.0,当我尝试执行多个实体的检索时出现以下错误。

无法加载文件或程序集“System.Core,Version=4.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089”或其依赖项之一。系统找不到指定的文件。

我很确定引用的程序集是 microsoft.crm.sdktypeproxy,因为另一个 (microsoft.crm.sdk) 不会产生任何问题.

所以我去了服务器并在后者所在的每个位置添加了前者。无济于事。我需要该程序集,因为我将检索自定义实体的多个实例。

我将 DLL 复制到 CRMWeb\binServer\bin 以及我的插件注册工具目录和 IIS 中的一些地方。我该如何解决这个问题?!

【问题讨论】:

  • 让我们看看整个堆栈跟踪。
  • 复制后是否发出了 iis-reset?
  • @KonradViltersten 因为它是一个插件我很确定它将使用 .net 版本的 CRM 4.0 应用程序池执行,并且 CRM 4.0 不支持 .NET 4.0。
  • 好的,我认为@GuidoPreite 找到了罪魁祸首(请随意将其复制到答案中,以便获得功劳。)CRM 4 插件在 Dynamics CRM 4 应用程序的上下文中运行。 Dynamics CRM 4 是一个 .NET 3.0 应用程序。因此,要在 Dynamics 4 中运行的插件必须以 .NET 3.0 兼容框架为目标,而 .NET 4 则不是。这就是您在 System.Core 上收到错误的原因 - 无法访问 System.Core 4.0。我不确定它在 CRM 4 SDK 中的确切位置,但这里有一篇来自 CRM 产品团队的帖子,其中明确指出插件应该针对 .NET 3.0:goo.gl/kD17GH
  • @Nicknow 你是对的,但我还发现 CRM 4.0 rollup 18 引入了对 .net 4.0 的支持,我用链接添加了答案

标签: plugins dynamics-crm .net-assembly dynamics-crm-4


【解决方案1】:

错误涉及 .NET 4.0 程序集,可能您的 Dynamics CRM 4.0 环境尚未更新到(至少)汇总 18,即支持 .NET 4.0 的最小汇总,如下所述:

Microsoft Dynamics CRM Compatibility List

如果 CRM 的汇总值较低,则它仅支持 .NET 3.0/.NET 3.5

【讨论】:

  • 有趣(读作:非常无趣)的故事。在我的客户那里,他们决定不安装最新的 RU。事实上,他们从未安装过汇总。所以,无论是 RU18 还是 RU-anything-else。我被观鸟了......(阅读:我被躲开了,但是用“w”。)你真神,Guido!
【解决方案2】:

用于故障排除的工具是fuslogvw。如果引用的任何程序集是本机 32 位或 64 位,请确保您的应用程序设置为匹配 - 这是此异常的常见原因。

【讨论】:

    猜你喜欢
    • 2020-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-19
    • 1970-01-01
    • 2012-10-26
    • 1970-01-01
    相关资源
    最近更新 更多