使用ASP.NET Core创建REST API最推荐。它跨平台、高性能,适合构建现代Web API。通过dotnet new webapi命令可快速创建项目,默认包含WeatherForecast示例并启动服务。控制器继承ControllerBase,用[ApiController]和[Route]定义路由,如ProductsController实现GET、POST等操作。启用Swagger需安装Swashbuckle包,添加AddSwaggerGen和UseSwagger中间件,访问/swagger可查看交互式文档。建议结合Postman测试接口,注意Content-Type设置为application/json。后续可集成EF Core、身份验证等功能,逐步扩展功能。掌握基础后多练习小项目,关注路由、状态码与异常处理细节。

要用C#创建REST API,最推荐的方式是使用ASP.NET Core。它是一个跨平台、高性能的框架,专为构建现代Web API而设计。下面是一份简明实用的入门指南,帮助你快速搭建一个基础的REST API。
打开命令行工具或Visual Studio,运行以下命令创建一个新的Web API项目:
dotnet new webapi -n MyFirstApi cd MyFirstApi dotnet run执行后,项目会启动,默认在https://localhost:5001提供服务,并包含一个自动生成的WeatherForecast示例API。
ASP.NET Core使用控制器来处理HTTP请求。每个控制器是一个继承自 ControllerBase 的类,通常放在Controllers文件夹中。
例如,创建一个管理“产品”的API:
// Controllers/ProductsController.cs using Microsoft.AspNetCore.Mvc;[ApiController]
[Route("api/[controller]")]
public class ProductsController : ControllerBase
{
private static List<string> products = new() { "苹果", "香蕉" };
[HttpGet]
public IActionResult Get() => Ok(products);
[HttpGet("{id}")]
public IActionResult GetById(int id)
{
if (id >= products.Count || id < 0) return NotFound();
return Ok(products[id]);
}
[HttpPost]
public IActionResult Add([FromBody] string name)
{
products.Add(name);
return CreatedAtAction(nameof(GetById), new { id = products.Count - 1 }, name);
} }
[ApiController]启用自动模型验证和JSON绑定。
[Route]定义基础路径,[controller]会被控制器名称代替(如Products → /api/products)。
启动项目后,可通过以下方式测试:
建议使用Postman、curl或浏览器开发者工具发送请求。确保POST请求的Content-Type为application/json,例如:
Swagger(在ASP.NET Core中称为OpenAPI)能自动生成API文档并提供测试界面。
安装Swashbuckle:
dotnet add package Swashbuckle.AspNetCore在Program.cs中添加服务和中间件:
然后在app.Run()前加入:
重启后访问https://localhost:5001/swagger即可看到交互式文档页面。
基本上就这些。掌握这些基础后,你可以逐步添加数据库支持(如Entity Framework Core)、身份验证、日志记录等功能。ASP.NET Core结构清晰,扩展性强,非常适合构建稳定高效的REST API。不复杂但容易忽略细节,比如路由匹配、状态码返回和异常处理,建议多写几个小接口练手。
以上就是C#如何创建REST API C#使用ASP.NET Core构建Web API入门指南的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号