ASP.NET Core 创建 Web API 推荐新手从 Minimal API 入手,用 dotnet new web -n MyApi 创建轻量项目,几行代码即可定义路由与处理逻辑;中大型项目则宜采用 Controller 模式,通过特性标注实现规范分层与功能扩展。

ASP.NET Core 创建 Web API 很简单,核心是用 Minimal API 或 Controller 模式 两种主流方式,推荐新手从 Minimal API 入手,代码少、逻辑直、上手快。
用 dotnet CLI 快速创建项目
打开终端,执行一行命令即可生成一个纯净的 API 项目:
- dotnet new webapi -n MyApi(带 Controller 的传统方式)
- dotnet new web -n MyApi(Minimal API 轻量模板,更现代)
进入项目目录后运行 dotnet run,API 就在 https://localhost:5001 启动了。
Minimal API:几行代码写个接口
在 Program.cs 里直接添加路由和处理逻辑,比如返回 JSON 数据:
- 添加 GET 接口:app.MapGet("/hello", () => new { Message = "Hello from ASP.NET Core!" });
- 支持参数:app.MapGet("/users/{id}", (int id) => new { Id = id, Name = $"User{id}" });
- 返回状态码:app.MapPost("/users", (User user) => Results.Created($"/users/{user.Id}", user));
不需要控制器类、不用配置路由属性,依赖注入和模型绑定自动可用。
Controller 方式:适合中大型项目
如果项目需要分层、复用、版本控制或 Swagger 文档,用 Controller 更规范:
- 新建 Controllers/WeatherForecastController.cs
- 继承 ControllerBase,加上 [ApiController] 特性
- 用 [HttpGet]、[HttpPost] 等特性定义路由和方法
- 返回 IActionResult 或具体类型(如 List
),框架自动序列化为 JSON
默认已启用模型验证、绑定、格式化,开箱即用。
别忘了基础配置
无论哪种方式,这几个点容易忽略但很关键:
- 确保 Program.cs 中调用了 builder.Services.AddControllers()(Controller 方式)或没禁用默认 JSON 支持
- 开发环境建议启用 Swagger:app.UseSwagger(); app.UseSwaggerUI();
- 跨域(CORS)若需前端调用,加 builder.Services.AddCors() 和中间件
- JSON 序列化设置(如忽略 null 值、驼峰命名)可在 AddJsonOptions 中调整
基本上就这些,不复杂但容易忽略细节。跑通第一个 GET /hello 后,再逐步加 POST、数据库、认证,节奏就很稳了。










