NuGet和/或PM突然无法正常工作

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NuGet和/或PM突然无法正常工作相关的知识,希望对你有一定的参考价值。

我有一个VS 2015社区解决方案,其中一个ASP.NET MVC C#项目已经正常工作,但是在安装和卸载软件包后,所有突然的NuGet开始表现不佳。包名称是Bogus,它是生成伪数据的Faker库的一个端口。 Bogus包并没有完全满足我的需要,所以我尝试使用Nuget卸载它。发生错误,但我不记得错误说的是什么。 :S

在尝试清理解决方案,重新启动VS,清空./packages文件夹和重建等一些简单的事情后,问题仍然存在。

所以我关闭VS并重新启动。然后删除了AppData/Local/Nuget/cache/的内容,并再次删除了解决方案的packages/文件夹中的所有内容(再次)。重新启动VS并执行Build。没有错误,但我仍然有症状:

  • 程序包管理器不再识别“添加迁移”命令: PM> add-migration Misc1 add-migration:术语“添加 - 迁移”不被识别为cmdlet,函数,脚本文件或可操作程序的名称。检查名称的拼写,或者如果包含路径,请验证路径是否正确,然后重试。在行:1个字符:1 添加迁移Misc1 ~~~~~~~~~~~~~ CategoryInfo:ObjectNotFound:(add-migration:String)[],CommandNotFoundException FullyQualifiedErrorId:CommandNotFoundException
  • 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”检索“Newtonsoft.Json.10.0.3”的程序包元数据时发生错误来自源'C: Users ME Projects MyProject packages'。 ==========完成==========

我真的陷入了困境。我不知道如何解决这个/这些问题,这已经花了我一天的停机时间。

有一件事很奇怪,我显然可以将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>
答案

使用@Oleksandr Pshenychnyythis SO question提供的简单解决方案解决了我的问题:

转到VS菜单工具>扩展和更新>更新,并检查NuGet包管理器是否没有更新。安装最新版本为我解决了这个问题。

更新NuGet后,所有内容似乎都按预期工作了。

以上是关于NuGet和/或PM突然无法正常工作的主要内容,如果未能解决你的问题,请参考以下文章

npm : 无法加载文件 D:softcodeProcess ode ode_global pm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.micr +(代码片段

带有复选框和自定义适配器的 ListView,片段无法正常工作

在非 sdk 项目中使用时无法解决 NuGet 包依赖关系,但在 sdk 项目中可以正常工作

使用片段共享过渡时返回过渡无法正常工作

无法从 onListItemClick 开始片段

[12小时Javascript Clock显示24时间,错误的AM / PM