我有一个VS 2015社区解决方案,其中一个ASP.NET MVC C#项目已经正常工作,但是在安装和卸载软件包后,所有突然的NuGet开始表现不佳。包名称为Bogus
,它是Faker库的一个端口,用于生成伪造数据。 Bogus
包并没有完全满足我的需要,所以我尝试使用Nuget卸载它。发生错误,但我不记得错误说的是什么。 :S
在尝试清理解决方案,重新启动VS以及清空./packages
文件夹并重建之后的一些简单操作后,问题仍然存在。
所以我关闭VS并重新启动。然后删除了AppData/Local/Nuget/cache/
的内容,并再次删除了解决方案的packages/
文件夹的所有内容(再次)。重新启动VS并执行Build。没有错误,但我仍有症状:
程序包管理器不再识别“添加迁移”命令:
PM>添加迁移Misc1 add-migration:术语“添加 - 迁移”不被识别为cmdlet,函数,脚本的名称 文件或可操作程序。检查名称的拼写,或者如果包含路径,请验证 路径是正确的,然后再试一次。 在行:1 char:1
NuGet无法卸载/更新项目的大多数已安装软件包。例如,我安装了WebGrease v1.5.2,最新的stable v1.6.0可用。当我单击“更新”按钮时,我在“VS错误列表”窗格中收到以下错误:
错误从源“C:\ Users \ ME \ Projects \ MyProject \ packages”检索“Newtonsoft.Json.10.0.3”的包元数据时发生错误。 0
并在“输出”窗格中显示以下错误:
尝试针对项目“MyProject”收集程序包“WebGrease.1.6.0”的依赖项信息,目标是“.NETFramework,Version = v4.6.1” 从源“C:\ Users \ ME \ Projects \ MyProject \ packages”检索“Newtonsoft.Json.10.0.3”的包元数据时发生错误。 ==========完成==========
我真的陷入了困境。我不知道如何解决这个/这些问题,这已经花了我一天的停机时间。
有一件事很奇怪,我显然可以将Newtonsoft.Json降级到10.0.2然后再次将其更新为10.0.3而不会出现任何错误。无法卸载它,就像我说的那样,我尝试更新或卸载的所有其他已安装的软件包都会产生错误 - 通常指向Newtonsoft.Json,如上所述。
这是packages.config:
<packages>
<package id="Antlr" version="3.4.1.9004" targetFramework="net461" />
<package id="bootstrap" version="3.0.0" targetFramework="net461" />
<package id="EntityFramework" version="6.1.3" targetFramework="net461" />
<package id="jQuery" version="1.10.2" targetFramework="net461" />
<package id="jquery.datatables" version="1.10.15" targetFramework="net461" />
<package id="jQuery.Validation" version="1.11.1" targetFramework="net461" />
<package id="Microsoft.ApplicationInsights" version="1.2.3" targetFramework="net461" />
<package id="Microsoft.ApplicationInsights.Agent.Intercept" version="1.2.0" targetFramework="net461" />
<package id="Microsoft.ApplicationInsights.DependencyCollector" version="1.2.3" targetFramework="net461" />
<package id="Microsoft.ApplicationInsights.JavaScript" version="0.15.0-build58334" targetFramework="net461" />
<package id="Microsoft.ApplicationInsights.PerfCounterCollector" version="1.2.3" targetFramework="net461" />
<package id="Microsoft.ApplicationInsights.Web" version="1.2.3" targetFramework="net461" />
<package id="Microsoft.ApplicationInsights.WindowsServer" version="1.2.3" targetFramework="net461" />
<package id="Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel" version="1.2.3" targetFramework="net461" />
<package id="Microsoft.AspNet.Identity.Core" version="2.2.1" targetFramework="net461" />
<package id="Microsoft.AspNet.Identity.EntityFramework" version="2.2.1" targetFramework="net461" />
<package id="Microsoft.AspNet.Identity.Owin" version="2.2.1" targetFramework="net461" />
<package id="Microsoft.AspNet.Mvc" version="5.2.3" targetFramework="net461" />
<package id="Microsoft.AspNet.Razor" version="3.2.3" targetFramework="net461" />
<package id="Microsoft.AspNet.Web.Optimization" version="1.1.3" targetFramework="net461" />
<package id="Microsoft.AspNet.WebPages" version="3.2.3" targetFramework="net461" />
<package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="1.0.0" targetFramework="net461" />
<package id="Microsoft.jQuery.Unobtrusive.Validation" version="3.2.3" targetFramework="net461" />
<package id="Microsoft.Net.Compilers" version="1.0.0" targetFramework="net461" developmentDependency="true" />
<package id="Microsoft.Owin" version="3.1.0" targetFramework="net461" />
<package id="Microsoft.Owin.Host.SystemWeb" version="3.1.0" targetFramework="net461" />
<package id="Microsoft.Owin.Security" version="3.1.0" targetFramework="net461" />
<package id="Microsoft.Owin.Security.Cookies" version="3.1.0" targetFramework="net461" />
<package id="Microsoft.Owin.Security.Facebook" version="3.1.0" targetFramework="net461" />
<package id="Microsoft.Owin.Security.Google" version="3.1.0" targetFramework="net461" />
<package id="Microsoft.Owin.Security.MicrosoftAccount" version="3.1.0" targetFramework="net461" />
<package id="Microsoft.Owin.Security.OAuth" version="3.1.0" targetFramework="net461" />
<package id="Microsoft.Owin.Security.Twitter" version="3.1.0" targetFramework="net461" />
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net461" />
<package id="Modernizr" version="2.6.2" targetFramework="net461" />
<package id="NBuilder" version="5.0.0" targetFramework="net461" />
<package id="Newtonsoft.Json" version="10.0.3" targetFramework="net461" />
<package id="Owin" version="1.0" targetFramework="net461" />
<package id="Respond" version="1.2.0" targetFramework="net461" />
<package id="WebGrease" version="1.5.2" targetFramework="net461" />
</packages>
答案 0 :(得分:2)
使用this SO question中@Oleksandr Pshenychnyy
提供的简单解决方案解决了我的问题:
转到VS菜单工具&gt; 扩展程序和更新&gt; 更新并检查是否 NuGet Package Manager没有更新。安装最新的 版本为我解决了这个问题。
更新NuGet后,所有内容似乎再次按预期工作。