错误的System.Web.Mvc更新

Joe*_*Joe 5 asp.net nuget

我在GAC中添加了System.Web.Mvc v4.0.0.0,因此我通过nuget手动安装了Mvc,其中包含"Install-Package Microsoft.AspNet.Mvc -Version 5.2.3".

我现在安装了System.Web.Mvc v5.2.3.0, NuGet经理

和GAC中的System.Web.Mvc v4.0.0.0 GAC

我在Web.config中有这个:

 <dependentAssembly>
    <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
    <bindingRedirect oldVersion="1.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
  </dependentAssembly>
Run Code Online (Sandbox Code Playgroud)

我构建并运行该项目,我得到了下一个错误:

无法加载文件或程序集'System.Web.Mvc,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其依赖项之一.该系统找不到指定的文件.

但是我已经配置并添加了MVC v5.2.3.0包.为什么会出现此错误?

已解决的 Dereference System.Web.Mvc参考 - >右键单击 - > Mange NuGet包... - >卸载MVC - >现在"安装".

mas*_*son 2

您看到列出的程序集来自GAC。这并不一定意味着您在项目中使用它。如果您想查看项目中安装的实际包,请右键单击该项目,然后单击“管理 NuGet 包”。

取消选中“添加引用”屏幕上的版本 4,然后使用包管理器控制台通过 NuGet 安装特定版本。确保您选择了正确的项目来安装包。

  • @Joe您不应该引用GAC DLL来获取可以在主框架之外获得的东西,例如MVC。MVC 现在通过 NuGet 而不是通过 GAC 在带外交付。事实上,对于 .NET Core 上的新 ASP.NET 5,根本不会有 GAC。 (2认同)