C#如何创建REST API C#使用ASP.NET Core构建Web API入门指南

月夜之吻
发布: 2025-11-17 16:48:06
原创
464人浏览过
使用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 c#使用asp.net core构建web api入门指南

要用C#创建REST API,最推荐的方式是使用ASP.NET Core。它是一个跨平台、高性能的框架,专为构建现代Web API而设计。下面是一份简明实用的入门指南,帮助你快速搭建一个基础的REST API。

创建ASP.NET Core Web 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)。

测试你的API

启动项目后,可通过以下方式测试:

  • GET /api/products:获取所有产品列表
  • GET /api/products/0:获取第一个产品
  • POST /api/products:请求体传入字符串,添加新产品

建议使用Postman、curl浏览器开发者工具发送请求。确保POST请求的Content-Type为application/json,例如:

AI建筑知识问答
AI建筑知识问答

用人工智能ChatGPT帮你解答所有建筑问题

AI建筑知识问答 22
查看详情 AI建筑知识问答
curl -X POST https://localhost:5001/api/products \ -H "Content-Type: application/json" \ -d "\"橙子\""

启用Swagger文档(推荐)

Swagger(在ASP.NET Core中称为OpenAPI)能自动生成API文档并提供测试界面。

安装Swashbuckle:

dotnet add package Swashbuckle.AspNetCore

Program.cs中添加服务和中间件:

builder.Services.AddEndpointsApiExplorer(); builder.Services.AddSwaggerGen();

然后在app.Run()前加入:

app.UseSwagger(); app.UseSwaggerUI();

重启后访问https://localhost:5001/swagger即可看到交互式文档页面。

基本上就这些。掌握这些基础后,你可以逐步添加数据库支持(如Entity Framework Core)、身份验证、日志记录等功能。ASP.NET Core结构清晰,扩展性强,非常适合构建稳定高效的REST API。不复杂但容易忽略细节,比如路由匹配、状态码返回和异常处理,建议多写几个小接口练手。

以上就是C#如何创建REST API C#使用ASP.NET Core构建Web API入门指南的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号