我的申请是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.0
,1.0.1
,1.0.2
,1.0.3
1.1.0
的{{1}},1.1.1
,1.1.2
无法保存使用。
如果我然后尝试运行该项目,我会收到以下错误消息:
System.BadImageFormatException:&#34;无法加载文件或程序集System.Core,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089&#39;。不应加载引用程序集以执行。它们只能在Reflection-only loader上下文中加载。 (HRESULT异常:0x80131058)&#34;
内部异常:BadImageFormatException:无法加载引用程序集以供执行。
我做错了什么?
答案 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
,一切正常。