在netcoreapp3.0控制台应用中,默认生成myprogram.exe。它是什么?

我有以下简单项目:


<Project Sdk="Microsoft.NET.Sdk">


 <PropertyGroup>

    <OutputType>Exe</OutputType>

    <TargetFramework>netcoreapp3.0</TargetFramework>

    <LangVersion>8.0</LangVersion>

 </PropertyGroup>

 </Project>

在netcoreapp3.0中:


运行“dotnet build”时,我发现生成的文件 myprogram.dll 大小为 5k,而 myprogram.exe 生成的大小为 239k


在 netcoreapp2.2 中:


未生成 myprogram.exe。


我可以运行程序:


    dotnet myprogram.dll

要么


    myprogram.exe //it need .netcore be installed.

为什么在netcoreapp3.0中生成了myprogram.exe和myprogram.dll这两个文件,而在netcoreapp2.2中只生成了myprogram.dll?


慕标琳琳
浏览 127回答 1
1回答

森栏

来自https://devblogs.microsoft.com/dotnet/announcing-net-core-3-preview-1-and-open-sourcing-windows-desktop-frameworks/NET Core 应用程序现在使用可执行文件构建。这对于使用全球安装的 .NET Core 版本的应用程序来说是新的。直到现在,只有独立的应用程序具有可执行文件。您可以看到在以下示例中生成的可执行文件。您可以期望这些可执行文件具有与其他本机可执行文件相同的功能,例如:您可以双击可执行文件。您可以在不使用 dotnet 工具的情况下从命令提示符启动应用程序,在 Windows 上使用 myconsole.exe,在 Linux 和 macOS 上使用 ./myconsole,如以下示例所示。因此,这只是使用该程序的一种更方便的方式。您不需要使用命令行dotnet myapp.dll来启动应用程序。你可以运行exe。
打开App,查看更多内容
随时随地看视频慕课网APP