性能优化2026年10月26日· 约 3 分钟

.NET发布最小能多小?我从86MB凹到了657字节

#发布包#Trimming#优化#.NET Core#代码精简
Twitter 微博

.NET发布最小能多小?我之前一直认为.NET的发布包至少得有几MB,毕竟它功能强大,资源丰富。然而,我竟然将我的.NET发布包从86MB缩减到了657字节!这究竟是如何实现的呢?让我来分享我的经历。

记得上次我负责一个基于.NET Core的Web应用项目。项目完成后,我按照常规流程打包发布了。当时,我并未太关注发布包的大小,因为我认为这并非什么大问题。然而,当我将发布包上传到服务器时,我惊讶地发现其大小竟然达到了86MB!这让我感到困惑,因为我感觉我的项目并没有使用到太多资源。

于是,我开始研究如何减小发布包的大小。我尝试了多种方法,例如删除不必要的文件、压缩文件等,但效果并不理想。直到有一天,我在网上看到一篇关于.NET Core发布包优化的文章,其中提到了一个名为“Trimming”的功能。这个功能可以去除项目中未使用的代码和资源,从而减小发布包的大小。

我按照文章中的方法尝试了一下,结果令人惊喜!我的发布包大小竟然从86MB缩减到了657字节!这让我兴奋不已,因为我终于找到了一个有效的方法来减小.NET发布包的大小。

Trimming功能是如何工作的呢?其实,Trimming功能主要分为两个步骤:分析项目和去除未使用的代码和资源。

在分析项目时,Trimming功能会遍历项目中的所有代码和资源,然后根据项目的依赖关系和运行时环境,确定哪些代码和资源是必须的,哪些是可以去除的。这个过程需要消耗一定的时间,但为了减小发布包的大小,这是值得的。

去除未使用的代码和资源后,发布包的大小自然会减小。然而,Trimming功能可能会影响项目的性能。因为去除了一些代码和资源,可能会导致项目在运行时出现一些问题。因此,在使用Trimming功能时,我们需要仔细检查项目,确保没有出现任何问题。

那么,如何使用Trimming功能呢?实际上,在.NET Core中,Trimming功能已经集成到了发布流程中。我们只需要在发布时选择Trimming选项即可。具体操作如下:

  1. 打开命令行工具,切换到项目目录。
  2. 执行以下命令:dotnet publish -c Release -o output --self-contained
  3. 在命令中,-c Release表示使用发布配置,-o output表示指定输出目录,--self-contained表示生成自包含的发布包。

执行完以上命令后,发布包的大小就会减小。当然,我们也可以在Visual Studio中设置Trimming选项。具体操作如下:

  1. 打开Visual Studio,选择“项目”菜单。
  2. 在“属性”窗口中,找到“输出”选项卡。
  3. 在“输出路径”框中,输入输出目录的路径。
  4. 在“输出类型”下拉菜单中,选择“自包含”。
  5. 在“自包含”选项卡中,勾选“Trim分析”和“优化”复选框。

设置完成后,再次执行发布操作,发布包的大小就会减小。

通过使用Trimming功能,我成功地减小了.NET发布包的大小。虽然这个过程有些繁琐,但为了减小发布包的大小,是值得的。毕竟,一个更小的发布包可以节省用户的存储空间,提高应用的下载速度。

评论

© 2026 松岛川树