You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何发布ASP.NET MVC .NET Core 3.1应用且不生成exe可执行文件

解决方案

核心原理

.NET Core 发布生成的exe是宿主启动器文件,仅用作程序入口,核心业务逻辑全部存储在同名dll文件中,禁用exe生成不会影响程序正常功能。

方法1:修改项目文件全局配置(永久生效)

在你的ASP.NET MVC项目的.csproj文件中,加入UseAppHost配置节点即可全局禁用exe生成:

<Project Sdk="Microsoft.NET.Sdk.Web">
  <PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <!-- 加入这一行禁用宿主exe生成 -->
    <UseAppHost>false</UseAppHost>
  </PropertyGroup>
</Project>

保存后重新发布,产物中就不会出现exe文件。

方法2:命令行发布时临时指定(无需修改项目)

如果仅本次发布需要禁用exe,可在发布命令中添加参数:

dotnet publish -c Release /p:UseAppHost=false

如果需要指定运行时,补充-r参数即可:

dotnet publish -c Release -r win-x64 /p:UseAppHost=false

方法3:Visual Studio 图形界面发布配置

如果你使用VS可视化发布工具,按以下步骤操作:

  • 打开你的发布配置页,点击「编辑」按钮进入配置编辑界面
  • 切换到「设置」选项卡,展开「高级设置」分组
  • 取消勾选「生成宿主可执行文件」选项
  • 保存配置后重新发布即可

补充说明

禁用exe生成后,程序启动方式调整为执行dotnet 你的项目名.dll命令即可,功能与exe启动完全一致。共享主机环境一般已预安装.NET Core 3.1运行时,无需额外配置即可正常运行。

内容的提问来源于stack exchange,提问作者Nikhil Mittal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 11:33:00