我试图使用nopCommerce(这是写在。net核心),但当我想运行项目时,我面临52个错误告诉我运行一个nuget包恢复

Assets文件~\obj\project.assets。Json没有找到。运行NuGet包还原生成此文件。Nop.Web.MVC.Testsote

当我使用右键单击解决方案并选择恢复Nuget包时,我得到这样的消息:

所有的包都已经安装,没有什么要恢复的。

但是这52个错误仍然存在,在工具-> NuGet包管理器->管理解决方案的NuGet包中,解决方案上没有安装任何东西,我最近更新了我的VS2017到15.5.4


当前回答

试试这个(对我很管用):

以管理员身份运行VS 手动更新NuGet到最新版本 删除项目中所有的bin和obj文件。 重新启动和 重新编译

其他回答

以管理员身份运行VS,然后在包管理控制台运行dotnet restore。

回答这个问题有点晚了,但似乎这将增加价值。看看这个错误——它似乎发生在CI/CD管道中。

运行“dotnet build”就足够了。

dotnet构建

Dotnet构建默认运行“还原”。

我没有在任何地方发现微软建议的删除“packages”文件夹的方法。

来源:解决包恢复错误

You may encounter build errors due to missing files, with a message saying to use NuGet restore to download them. However, running a restore might say, "All packages are already installed and there is nothing to restore." In this case, delete the packages folder (when using packages.config) or the obj/project.assets.json file (when using PackageReference) and run restore again. If the error still persists, use nuget locals all -clear or dotnet nuget locals all --clear from the command line to clear the global-packages and cache folders as described on Managing the global packages and cache folders.

在我的例子中,我在*中添加了以下内容。在“Clean”上完全删除obj和bin文件夹。显然,它就是罪魁祸首。摆脱了那个和中提琴,一切又开始运转了。现在我正在使用“清洁垃圾箱”扩展代替。希望这可以帮助任何遇到这个问题的人,上面提到的修复都不起作用。

<Target Name="SuperClean" AfterTargets="Clean">
    <!-- Remove obj folder -->
    <RemoveDir Directories="$(BaseIntermediateOutputPath)" />
    <!-- Remove bin folder -->
    <RemoveDir Directories="$(BaseOutputPath)" />
</Target>    

通过添加/t:Restore;Build到MSBuild参数解决