.NET Framework项目上的dotnet还原无法正常工作

时间:2019-09-03 10:02:16

标签: c# .net

我有一个.NET项目,其.csproj

中包含以下内容
<TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>

运行dotnet restore project-file.csproj时,我得到以下信息:

  

无事可做。指定的项目均不包含要还原的软件包。

这是为什么?我以为dotnet cli也可以与非Core项目一起使用?

我有被引用的nuget软件包,所以我希望cli能够下载nuget软件包。

3 个答案:

答案 0 :(得分:2)

dotnet cli仅在使用dotnet new命令创建项目的情况下才能与.NET Framework一起正常使用。如果从Visual Studio创建项目,则.csroj文件的结构将有所不同,并且通常无法对其执行cli命令

答案 1 :(得分:0)

Visual Studio仅允许您从Visual Studio自身中的nuget控制台(程序包管理器控制台)运行nuget命令。

如果要从命令行执行nuget还原:

  • https://www.nuget.org/downloads下载nuget可执行文件 (它不是安装程序/软件包,而是实际的可执行文件!)

  • 将其保存到您选择的文件夹并将其添加到PATH。

  • 然后,如上所建议:nuget restore solutionname.sln(但是这次您不必运行Visual Studio!)

答案 2 :(得分:0)

概述

使用Visual Studio创建Docker支持时,将创建.dockerignore。在内部,您会发现当docker创建构建上下文时,所有文件夹都将被忽略。删除行* / docker-compose 。 在这种情况下,docker将能够在上下文中集成所有docker-compose文件(以及解决方案所需的文件docker-compose.dcproj)

解决方案

--> remove line **/docker-compose* in .dockerignore`