使.net核心控制台应用程序成为单个.exe

Gue*_*lla 5 c# .net-core

我有一个C#.NET Core 2.0控制台应用程序。我要部署它,因此它是一个单个.exe文件,所有相关文件都.dll包含在中.exe

这可能吗?

我要执行此操作的原因是,我已经制作了多个控制台应用程序,并且希望将它们放置在同一文件夹中,以便只需要1个路径条目就可以从命令行使用它们。

如果发布,dotnet publish -c Release -r win10-x64则会得到一个,.exe但也会加载其他文件。

无论如何,要将所有这些关联的文件移动到一个命名的子文件夹,或者将它们全部包装在一个文件中?

Pis*_*usa 13

我知道这个问题已经有几年了,但现在终于可以通过 .NET Core 实现这一点。

您可以通过两种不同的方式实现这一目标

  1. 在控制台/终端中
dotnet publish -r win-x64 -c Release /p:PublishSingleFile=true
Run Code Online (Sandbox Code Playgroud)
  1. 发布应用程序

在此输入图像描述

在此输入图像描述

在此输入图像描述

您可以从下面的链接找到更多信息

https://learn.microsoft.com/en-us/dotnet/core/deploying/single-file

https://dotnetcoretutorials.com/2019/06/20/publishing-a-single-exe-file-in-net-core-3-0/


Set*_*Set 5

不,现在 .NET Core 不支持生成包含整个应用程序的单个 .exe。

当您阅读self-contained应用程序时不要感到困惑。自包含意味着通过指定目标运行时(如-r win10-x64)为特定操作系统发布应用程序,这允许不将 .NET Core 作为目标机器中的共享运行时。