WebApi giving 404 whilst debugging; works when published

痴心易碎 提交于 2019-12-01 07:03:34

There's a very relevant GitHub issue that explains what's going on here. Pranav K from the ASP.NET Core team says:

MVC 2.1.0 requires compilation context to be available. Compilation context tells it if a library references MVC which is used as a filter to skip assemblies that are deemed unlikely to have controllers. Microsoft.NET.Sdk does not set <PreserveCompilationContext>true</PreserveCompilationContext> which would explain why you're seeing this.

This means there's a couple of working solutions to the problem you're seeing:

  1. Add the PreserveCompilationContext property to your .csproj file with a value of true, as shown above.
  2. Reference the Microsoft.NET.Sdk.Web project SDK instead of Microsoft.NET.Sdk.

I don't know of any perceivable difference between these two options, but I would just update the project SDK given that it is in fact a Web project you're building.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!