【问题标题】:.NET Standard: assembly's manifest definition does not match assembly reference.NET Standard:程序集的清单定义与程序集引用不匹配
【发布时间】:2018-10-13 06:14:17
【问题描述】:

只要我更新任何使用 .NET Standard(并且以前没有使用过)的库,我就会得到以下信息:

Could not load file or assembly 'System.Net.Http' or one of its dependencies.
The located assembly's manifest definition does not match the assembly reference.

使用 package.config

<package id="System.Net.Http" version="4.3.3" targetFramework="net461" />

Web.config

<dependentAssembly>
    <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-4.1.1.0" newVersion="4.1.1.0" />
</dependentAssembly>

在 Web.config 绑定中尝试使用 4.3.3.0,但同样的错误。 使用 VS 2017 最新版本。

更新

我们发现将Microsoft.Extensions.Logging.Abstractions 从 v1 升级到 v2。从 1.1.2 升级到 2.0.2 就出现上面的错误。

【问题讨论】:

  • 您的目标是什么版本的 .NET Framework?
  • 与 packages.config - 4.6.1 中指定的相同
  • 绑定重定向是否在运行时部分和程序集绑定部分内?确保网络配置正确设置。
  • 是的,就在所有其他绑定的中间...:/
  • 你有这方面的复制品,我可以看看吗?

标签: c# .net visual-studio .net-standard


【解决方案1】:

我的目标是 4.6.2,我通过 Nuget 安装了 System.Net.Http 版本 4.3.3,我得到了同样的错误。

当我将绑定重定向更改为使用时:

<dependentAssembly>
    <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
    <bindingRedirect oldVersion="0.0.0.0-4.1.1.2" newVersion="4.1.1.2"/>
  </dependentAssembly>

错误消失了,我可以再次构建和测试而不会出现问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-20
    相关资源
    最近更新 更多