Microsoft安全通报4021279 System.BadImageFormatException

时间:2017-06-01 06:06:59

标签: c# .net visual-studio

我的申请是ASP.NET Core 1.0 Web API

根据Microsoft Security Advisory 4021279,我想更新项目的直接依赖。

MyClassName.csproj中有以下一行:

<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.0.3" />

我改为:

<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.0.4" />

因为版本1.0.01.0.11.0.21.0.3 1.1.0的{​​{1}},1.1.11.1.2无法保存使用。

如果我然后尝试运行该项目,我会收到以下错误消息:

  

System.BadImageFormatException:&#34;无法加载文件或程序集System.Core,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089&#39;。不应加载引用程序集以执行。它们只能在Reflection-only loader上下文中加载。 (HRESULT异常:0x80131058)&#34;

     

内部异常:BadImageFormatException:无法加载引用程序集以供执行。

我做错了什么?

1 个答案:

答案 0 :(得分:1)

所以The post on Git说明如下:

  

如果在重新编译后看到依赖项冲突警告,则必须将其他直接依赖项更新为相应的版本。

     

例如,当您将Microsoft.AspNetCore.Mvc软件包更新为1.0.4时,如果您的项目引用版本号为1.0.1的Microsoft.AspNetCore.Routing,则编译将抛出:

     

NU1012依赖冲突。 Microsoft.AspNetCore.Mvc.Core 1.0.4期望Microsoft.AspNetCore.Routing&gt; = 1.0.4但收到1.0.1

正如您在我的问题中所看到的,我没有收到此错误消息。但是,我将Microsoft.AspNetCore.Routing的版本更新为1.0.4,一切正常。