使用ASP.NET Core创建RESTful API:安装.NET SDK后,通过dotnet new webapi命令创建项目,定义Product模型和ProductsController实现CRUD操作,运行dotnet run启动服务,访问https://localhost:5001/swagger测试接口,可选集成Entity Framework Core支持数据库,并通过dotnet publish部署应用。

要使用 C# 创建一个 RESTful API,最常用的方式是通过 ASP.NET Core。它轻量、跨平台,并且非常适合构建现代 Web API。下面是一个完整的入门教程,带你从零开始创建一个简单的 RESTful API。
1. 准备开发环境
确保你已安装以下工具:
.NET SDK(建议 6.0 或更高版本)Visual Studio(2022 推荐)或 Visual Studio Code终端/命令行工具
你可以通过运行 dotnet –version 检查是否已安装 .NET SDK。
2. 创建 Web API 项目
打开终端,执行以下命令创建一个新的 Web API 项目:
dotnet new webapi -n MyRestApi
cd MyRestApi
dotnet run
项目创建完成后,默认会在 http://localhost:5000 启动服务,访问 https://localhost:5001/weatherforecast 可看到示例数据。
3. 理解项目结构
关键文件和目录说明:
Program.cs:应用入口,配置服务和中间件(.NET 6+ 使用隐式 using 和顶级语句)Controllers 文件夹:存放控制器类,处理 HTTP 请求appsettings.json:配置文件,如数据库连接字符串Properties/launchSettings.json:本地运行配置
4. 创建自己的数据模型
添加一个表示“产品”的类:
public class Product
{
public int Id { get; set; }
public string Name { get; set; } = string.Empty;
public decimal Price { get; set; }
}
将这个类保存在项目根目录下,命名为 Product.cs。
5. 创建控制器处理请求
新建控制器 ProductsController.cs:
using Microsoft.AspNetCore.Mvc;
[ApiController]
[Route(“api/[controller]”)]
public class ProductsController : ControllerBase
{
private static List _products = new List
{
new Product { Id = 1, Name = “键盘”, Price = 299 },
new Product { Id = 2, Name = “鼠标”, Price = 99 }
};
[HttpGet]
public IActionResult Get() => Ok(_products);
[HttpGet(“{id}”)]
public IActionResult Get(int id)
{
var product = _products.FirstOrDefault(p => p.Id == id);
return product == null ? NotFound() : Ok(product);
}
[HttpPost]
public IActionResult Post(Product product)
{
product.Id = _products.Max(p => p.Id) + 1;
_products.Add(product);
return CreatedAtAction(nameof(Get), new { id = product.Id }, product);
}
[HttpPut(“{id}”)]
public IActionResult Put(int id, Product updatedProduct)
{
var product = _products.FirstOrDefault(p => p.Id == id);
if (product == null) return NotFound();
product.Name = updatedProduct.Name;
product.Price = updatedProduct.Price;
return NoContent();
}
[HttpDelete(“{id}”)]
public IActionResult Delete(int id)
{
var product = _products.FirstOrDefault(p => p.Id == id);
if (product == null) return NotFound();
_products.Remove(product);
return NoContent();
}
}
这个控制器实现了标准的 CRUD 操作:
GET /api/products → 获取所有产品GET /api/products/1 → 获取特定产品POST /api/products → 添加新产品PUT /api/products/1 → 更新产品DELETE /api/products/1 → 删除产品
6. 测试你的 API
启动服务:
dotnet run
使用工具测试 API:
浏览器访问 https://localhost:5001/api/products使用 Postman 或 curl 发送 POST、PUT、DELETE 请求VS Code 安装 Thunder Client 插件进行测试
7. 添加数据库支持(可选)
若需要持久化存储,可集成 Entity Framework Core:
dotnet add package Microsoft.EntityFrameworkCore.SqlServer
dotnet add package Microsoft.EntityFrameworkCore.Tools
然后定义 DbContext:
public class AppDbContext : DbContext
{
public DbSet Products { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder options)
=> options.UseSqlServer(“Server=(localdb)mssqllocaldb;Database=MyAppDb;Trusted_Connection=true;”);
}
再在 Program.cs 中注册上下文:
builder.Services.AddDbContext();
8. 启用 Swagger 文档
ASP.NET Core 模板默认已集成 Swagger(也叫 OpenAPI)。运行项目后访问:
https://localhost:5001/swagger
你可以在浏览器中查看和测试所有 API 接口。
9. 部署 API
发布项目到生产环境:
dotnet publish -c Release -o ./publish
然后将 publish 文件夹部署到 IIS、Docker、Azure 或 Linux 服务器上。
基本上就这些。你现在拥有了一个功能完整的 C# RESTful API,支持标准 HTTP 方法、JSON 数据交换,并具备扩展能力。后续可以加入身份验证(JWT)、日志记录、异常处理、CORS 配置等高级功能。
以上就是C# 如何创建一个 RESTful API_C# RESTful API 开发完整教程的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1441660.html
微信扫一扫
支付宝扫一扫