.NET 8中dotnet new webapi命令为何未生成Controllers文件夹?
解决.NET 8.0中dotnet new webapi命令未生成Controllers文件夹的问题
原因说明
.NET 8.0的webapi模板默认启用最小API模式,这种模式无需Controllers文件夹,接口路由与业务逻辑直接在Program.cs中定义,所以不会自动生成Controllers目录。
解决办法
方法1:创建项目时直接指定生成Controllers结构
执行带参数的创建命令,强制生成传统Controllers模式的WebAPI项目:
dotnet new webapi -n API --use-controllers
这个命令会生成包含Controllers文件夹的完整结构,默认自带WeatherForecastController示例。
方法2:给已创建的项目手动添加Controllers
如果已经创建了项目,按以下步骤补全:
- 在项目根目录新建名为
Controllers的文件夹 - 右键该文件夹,添加新的API控制器(可选择“API控制器 - 空”或其他合适的模板)
- 打开
Program.cs,添加控制器服务配置并启用路由:
先添加服务注册:
再替换或补充路由配置(如果不需要保留最小API逻辑):builder.Services.AddControllers();app.MapControllers();
内容的提问来源于stack exchange,提问作者haroon khan
相关产品推荐
相关产品推荐

