Winforms平台界面开发技巧分享——使用.NET Core 3的单文件应用

下载DevExpress v19.2完整版

DevExpress Winforms Controls 内置140多个UI控件和库,完美构建流畅、美观且易于使用的应用程序。

在Microsoft宣布WinForms支持.NET Core 3后,DevExpress技术团队在最新的版本中支持了.NET Core,.NET Core中一项有趣的功能是对单文件可执行AOT编译的应用程序的支持,本文将为大家介绍如何在DevExpress WinForms针对.NET Core 3的示例中演示此功能。

先决条件

首先,您需要安装.NET Core 3 Preview 5 SDK。就本文而言,SDK就是您所需要针对的项目,最新的Visual Studio 2019可用。

使用Git命令行工具、Visual Studio或下载zip文件,在您的计算机上复制 GitHub repository DevExpress .NET Core WinForms Demos 。

请注意,存储库中的文件README.md包含在Visual Studio中使用的演示说明,但这不是必需的,可查看实际的单文件可执行发布机制。

测试单文件可执行发布

打开命令提示符,然后使用cd命令导航到StockMarketTraderApp演示文件夹,运行命令dotnet publish -r win10-x64来构建和发布解决方案,参数-r win10-x64标识应用程序的目标平台。

对于大多数实际场景,应添加参数-c Release来使用Release配置构建应用程序,否则将使用Debug进行构建。

在demo文件夹中,导航到新创建的目录\ bin \ Debug \ netcoreapp3.0 \ win10-x64 \ publish(如果添加了-c Release,则为\ bin \ Release \ netcoreapp3.0 \ win10-x64 \ publish)文件夹 包含需要分发给最终用户的340多个文件,包括您自己的应用程序逻辑程序集、标准.NET和DevExpress程序集。为Release配置生成的文件较少,但差异不大。

Winforms平台界面开发技巧分享——使用.NET Core 3的单文件应用

运行DevExpress.StockMarketTrader.exe并在任务管理器中检查内存消耗。 在我们的测试机上,该值在220到260 MB之间变化。

Winforms平台界面开发技巧分享——使用.NET Core 3的单文件应用

要测试单文件可执行发布,请删除文件夹bin。 现在再次运行dotnet publish命令,但是这次添加一个参数来设置MSBuild的PublishSingleFile属性:

 

dotnet publish -r win10-x64 -c Release -p:PublishSingleFile=true

 

再次检查自动生成publish文件夹,其路径与以前相同,这次您将看到一个文件夹、一个267 MB的自解压可执行文件。

Winforms平台界面开发技巧分享——使用.NET Core 3的单文件应用

该文件在任何Windows 10 x64位计算机上运行StockMarketTrader演示,并将应用程序需要的所有内容包含在一个文件中。

Winforms平台界面开发技巧分享——使用.NET Core 3的单文件应用

首次启动应用程序要比多文件部署花费更长的时间,因为所有依赖项都被解压缩到%AppData%中的临时文件夹中。

Winforms平台界面开发技巧分享——使用.NET Core 3的单文件应用

在进一步运行时,不会对启动时间或内存消耗造成任何损失。

Winforms平台界面开发技巧分享——使用.NET Core 3的单文件应用
更多信息

Microsoft保证,在.NET 5发布时,您将能够发布由提前(AOT)编译器创建的单文件可执行文件,来替代现在可用的自解压可执行文件。我们正在密切关注所有.NET Core更新,以确保我们的控件和组件完全支持所有新功能。

有关单文件发布的一些设计文档可用。 如果您好奇,请查看以下链接:

DevExpress Winforms For .NET Core 3

DevExpress NuGet软件包可用于将WinForms组件与.NET Core 3一起使用,最近更新的这些软件包,支持其他程序集,并且现在所有内容都是由.NET Core 3本机构建的。


DevExpress Dashboard控件实操公开课4月即将开启,

专家名师在线直播,免费听课名额先到先得~

DevExpress技术交流群:540330292      欢迎一起进群讨论

扫描关注DevExpress中文网微信公众号,及时获取最新动态及最新资讯

Winforms平台界面开发技巧分享——使用.NET Core 3的单文件应用

Winforms平台界面开发技巧分享——使用.NET Core 3的单文件应用

上一篇:C#中自定义方向盘控件


下一篇:win10安装ElasticSearch