繁体   English   中英

将 .NET Framework 4.6.1 更新到 4.8 后出错

[英]Error after updating .NET Framework 4.6.1 to 4.8

我将应用程序从 .NET Framework 4.6.1 更新到 4.8,但加载应用程序时出错。

对于上下文:此应用程序使用 Ninject Nuget 进行依赖注入。 此 nuget 会在 App_Start 文件夹中自动创建一个名为“NinjectWebCommon.cs”的文件。在此 ninject 文件中,StandardKernel() 出现错误; 方法

 private static IKernel CreateKernel()
    {
        var kernel = new StandardKernel();

我遇到的错误是这样的:

System.IO.FileNotFoundException:'无法加载文件或程序集'System.Net.Http,版本 = 4.2.0.0,文化 = 中性,PublicKeyToken = b03f5f7f11d50a3a'或其依赖项之一。 该系统找不到指定的文件。'

在寻找解决方案时,我发现我需要在 Web.config 内部有一个绑定重定向,但我已经有了它。

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

我在项目上也有引用 System.Net.Http,所以我不知道它可能是什么

我删除了 System.Net.Http 的dependentAssembly,它起作用了。 我不知道这是否是最佳解决方案

我有一个类似的问题。 这就是我在升级到 4.8 之后为解决它所做的。

  1. 删除了 NuGet 包 System.Net.Http
  2. 重新添加了参考 System.Net.Http
  3. 在 App.config 中删除了 system.net.http 的 bindingredirect 行

像魅力一样工作!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM