当然可以,下面是根据你实际遇到的情况整理的一篇博客文章,内容技术准确、结构清晰,适合用于发布到 CSDN、知乎、掘金等平台分享。
遇到 ASP.NET Core 发布后接口 404 的深坑:原来是 PublishTrimmed 惹的祸!
最近在开发一个 ASP.NET Core Web API 的小项目,在开发调试阶段一切正常,接口也能正常访问。然而,在使用 dotnet publish
发布为自包含(Self-contained)应用部署后,访问接口始终返回 404。
本文将完整记录问题的背景、排查思路、最终定位到的罪魁祸首(⚠️ PublishTrimmed),以及如何正确解决这个“控制器被裁剪”的问题。
🧩 问题背景
我写了一个非常简单的 ASP.NET Core Web API 控制器:
[ApiController]
[Route("cloud/sdyd/throwPoint/np")]
public class ThrowPointController : ControllerBase
{
[HttpGet("aiList")]
public IActionResult aiList([FromQuery] string tenantId)
{
return Ok(new {
Message = $"Tenant: {