Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 发布选项已从VS2017的关联菜单中消失_C#_Visual Studio_Visual Studio 2017_Publishing_Csproj - Fatal编程技术网

C# 发布选项已从VS2017的关联菜单中消失

C# 发布选项已从VS2017的关联菜单中消失,c#,visual-studio,visual-studio-2017,publishing,csproj,C#,Visual Studio,Visual Studio 2017,Publishing,Csproj,所以我想发布一个项目,但不管出于什么原因我不能。我添加的最后一个项目仍然为我提供了这样做的选择,但其他项目都不允许我这样做。上下文菜单中缺少“发布”选项(请参见代码段)。我试图按照本文中的解释更改guid,但没有成功 如何发布我的项目 提前谢谢你的帮助 顺便说一句,我使用的是Visual Studio Community 2017,所以我一直无法找出菜单缺失的原因,但我找到了一种通过命令行发布它的方法,结果是相同的。使用具有管理员权限的cmd导航到要发布的项目,并使用以下命令: set Pl

所以我想发布一个项目,但不管出于什么原因我不能。我添加的最后一个项目仍然为我提供了这样做的选择,但其他项目都不允许我这样做。上下文菜单中缺少“发布”选项(请参见代码段)。我试图按照本文中的解释更改guid,但没有成功

如何发布我的项目

提前谢谢你的帮助


顺便说一句,我使用的是Visual Studio Community 2017,所以我一直无法找出菜单缺失的原因,但我找到了一种通过命令行发布它的方法,结果是相同的。使用具有管理员权限的cmd导航到要发布的项目,并使用以下命令:

set Platform=
set ASPNETCORE_ENVIRONMENT=
dotnet publish -c Release -o bin\Release\PublishOutput

-c指定配置{Debug | Release},并-o指定相对输出位置。有关更多信息,请参阅

的文档。我使用VS installer、选定的web开发选项并安装了它,解决了此问题。安装web开发设置后,我可以发布选项。

这是一个什么样的项目?据我记忆所及,要发布它,它必须是某种web api。例如,您不能发布类库或单元测试项目。确保输出格式是“exe”哦,是的,我应该提到这一点。这是一个控制台应用程序,它确实生成了一个.exe文件。你不能发布控制台应用程序,因为它需要一些web api的东西。尝试一个web api来发布。我拥有的另一个项目也是一个控制台应用程序。我在问题中展示的两个代码段都来自一个控制台应用程序,但其中一个允许我发布,而另一个不允许。嗯,您检查了.csproj文件的差异了吗?我一直认为发布只针对网络内容,因为你想把它推到这里。在我看来,这对于控制台应用程序来说没有多大意义。也许这有助于我不工作。我尝试了:dotnet publish-c Release-o。\PublishOutput。\TmSmsWebApi.sln/p:Platform=“Any CPU”,它似乎可以工作,但没有输出文件夹。输出有点奇怪:“确定要恢复的项目……所有项目都是最新的恢复项目。”您将ASPNETCORE_环境设置为什么?(顺便说一句,我没有使用.NET core,如果相关的话)。